#jquery #radio-button #onload #checked
#jquery #переключатель #onload #проверено
Вопрос:
У меня есть следующая настройка jsfiddle:
В принципе, почти все работает, кроме момента загрузки страницы, и если установлено значение audi, тогда механизм div должен быть скрыт (или, если значение не является audi, div должен отображаться). Любая помощь в получении этой работы была бы оценена.
Спасибо
Ответ №1:
Для начала вам нужно скрыть div. Я бы рекомендовал делать это с помощью CSS и показывать div с помощью JS, когда это необходимо, но если вам нужно использовать JS, вы можете сделать это следующим образом (из вашей скрипки):
$(document).ready(function(){
$("#engine").hide();
$("input[name$='cartype']").click(function(){
var value = $(this).attr('id');
alert(value);
if(value!='audi') {
$("#engine").show();
}else if(value=='audi') {
$("#engine").hide();
}
});
});
Причина, по которой это не работало раньше, заключалась в том, что ваша проверка, чтобы увидеть, что было выбрано, находилась внутри обработчика щелчков для переключателей.
Комментарии:
1. Нет проблем. Он, безусловно, сделал больше для исправления ошибок 🙂
Ответ №2:
Я обновил их.
- В значении радио использовались фактические значения.
- нажмите (), чтобы изменить ()
- Вызвал change () в начале, чтобы вызвать эффект изменения, прежде чем что-либо делать
Комментарии:
1. Упс, только что понял, мне нужно основывать проверки на id вместо имени, возможно ли это?
2. Не беспокойтесь, понял: var value = $(«input: radio [name $ =’cartype’]:checked»).attr(‘id’); должен использовать id только из-за того, как структурировано приложение. Спасибо за вашу помощь