Помогите разобраться с установкой параметра checked
Сервер отдает данные в XML, где задан параметр установки поля типа "checkbox" в checked.
Атрибут XML "is_true", определяющий установку checked может быть либо 1 (checked) либо 0 Однако поле всегда устанавливается в true (checked). Данные из ХМЛ помещены в массив data. Конструкция для установки флажка checked на JS: if (data.is_true) $('#'+qi+'question .answers p:last input.truth').attr('checked', 'checked'); Подскажите, пожалуйста, в этом фрагменте ошибка? и в чем она. Спасибо. |
if (data.is_true) $('#'+qi+'question .answers p:last input.truth').attr('checked', 'checked'); т.к. мы не можем посмотреть на всё (страница в инете), то console.log( data.is_true ); // undefined ??? 1? 0? или вообще что? console.log( $('#'+qi+'question .answers p:last input.truth').length ); // сколько ? т.е., находит или нет? // а еще обратите внимание на синтаксические ошибки ( если есть ) // и что такое *!*qi*/!* (в селекторе) ??? для этого включите файрбаг в ФФ, или панель разработки в хроме ( или драгонфлай в опере, или бла бла бла ) |
Не вопрос! - могу выложить весь скрипт и страничку.
Только скрипт весь в 544 строки :) |
тогда лучше лог консоли (выше)
|
Меня смущает конструкция .attr('checked', 'checked');
Не следует ли, что в любом случае устанавливается "checked"? Может имеет смысл .attr('checked', ''); - но я так пробовал, результат плачевный. |
swa,
if (data.is_true) $('#'+qi+'question .answers p:last input.truth').attr('checked', 'checked'); Вариант: $('#'+qi+'question .answers p:last input.truth').attr('checked', data.is_true); |
не хочет :(
всё равно устанавливает "checked".... Атрибут, от значения которого устанавливается "флажок" равен либо 1 (тогда checked) либо 0. Поставил data.is_true==1?true:false результат тот же.... |
Всем спасибо!
Ошибка в том, что присваивалось не логическое false/true а строковое.... |
Часовой пояс GMT +3, время: 02:37. |