Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.05.2010, 21:02
Новичок на форуме
Отправить личное сообщение для mike_s Посмотреть профиль Найти все сообщения от mike_s
 
Регистрация: 31.05.2010
Сообщений: 5

Два зависимых checkbox
Новичок. Делал методом проб и ошибок, т.ч. строго не судите.
Вроде всё работает, вопрос только в том, "по феншую-ли" или криво?
Задача 1:
Сделать видимым только один checkbox из двух, но при снятии выделения с видимого, оно (выделение) должно возвращаться на скрытый.
Задача 2:
При выделении или снятии выделения, показывать какой из параметров выбран.



<form action="cart" method="get">
<input type="checkbox" name="variant_id" value='1' onchange="display_variant_1(this.value);" id='1' checked="checked" style=" display:none;" />
<input type="checkbox" name="variant_id"  value='2' onchange="display_variant_1(this.value);" id='2' /><label for='2'>item №2</label><br />
<span id="variant_price_1">По-умолчанию item №1</span>
<script type="text/javascript"> 
var variants_prices = new Array;
variants_prices[1] = 'Вернули item №1';
variants_prices[2] = 'Выбрали item №2';
function display_variant_1()
{
if(document.getElementById('2').checked == true){document.getElementById('1').checked = false;document.getElementById('variant_price_1').innerHTML = variants_prices[2];}else{document.getElementById('1').checked = true;document.getElementById('variant_price_1').innerHTML = variants_prices[1];}
}
</script>
</form>

Последний раз редактировалось mike_s, 31.05.2010 в 21:39.
Ответить с цитированием
  #2 (permalink)  
Старый 31.05.2010, 21:23
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Пожалуйста, отредактируйте ваш код. Например, заключите его в BB-тег [html].
Ответить с цитированием
  #3 (permalink)  
Старый 31.05.2010, 23:20
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от mike_s
"по феншую-ли" или криво?
Сообщение от mike_s
Новичок.
Ты сам ответил на свой вопрос
Ответить с цитированием
  #4 (permalink)  
Старый 31.05.2010, 23:41
Новичок на форуме
Отправить личное сообщение для mike_s Посмотреть профиль Найти все сообщения от mike_s
 
Регистрация: 31.05.2010
Сообщений: 5

Сообщение от B~Vladi Посмотреть сообщение
Ты сам ответил на свой вопрос
Ну так дали бы дельный совет...
Ответить с цитированием
  #5 (permalink)  
Старый 01.06.2010, 00:04
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

А скрипт - в тег [Js].
Ответить с цитированием
  #6 (permalink)  
Старый 01.06.2010, 00:12
Любитель
Отправить личное сообщение для JsLoveR Посмотреть профиль Найти все сообщения от JsLoveR
 
Регистрация: 16.12.2009
Сообщений: 422

Сообщение от mike_s
"по феншую-ли" или криво?
Очень криво).
Ответить с цитированием
  #7 (permalink)  
Старый 01.06.2010, 00:13
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от mike_s
Ну так дали бы дельный совет...
Все приходит с опытом. Пару советов дам:
1. Найти элементы можно не только по id. Что касается форм, то можно обращаться и по имени к её элементам. Отвыкай от id.
2. При каждом вызове функции ты ищешь элементы, что есть самое узкое место (обращение к DOM). Сохраняй ссылки на нужные узлы при DOMready или onload.
3. Вставлять текстовые ресурсы в файлы js есть зло. Когда начнёшь работать с щаблонизаторами - поймёшь. Для этого есть несколько решений. В основном - это оформление какого-либо куска кода в виде модуля или плагина, который инициализируется из html-файла (шаблона). Что-то вроде:
new Plugin({
  data1: '',
  data2: '',
  data3: '',
  data4: '',
});

Обычно это делается перед </body>, когда весь DOM уже доступен.
Удачи.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
спрятать/показать поле ввода при нажатии на checkbox g1r Элементы интерфейса 34 16.12.2017 00:34
AJAX + Firefox некорректное отображение checkbox shu7 Firefox/Mozilla 2 26.06.2015 14:23
Свой стиль для CheckBox vah-smile Элементы интерфейса 7 23.06.2011 18:34
Блок переключения меню на JS, два скрипта в одном файле Dizeloid Элементы интерфейса 0 30.07.2009 12:03
Два одинаковых сценария на одной странице Genetics Общие вопросы Javascript 7 12.07.2009 01:46