Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Помогите разобраться с установкой параметра checked (https://javascript.ru/forum/jquery/16342-pomogite-razobratsya-s-ustanovkojj-parametra-checked.html)

swa 04.04.2011 19:31

Помогите разобраться с установкой параметра 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');


Подскажите, пожалуйста, в этом фрагменте ошибка? и в чем она.

Спасибо.

melky 04.04.2011 19:43

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*/!* (в селекторе) ???


для этого включите файрбаг в ФФ, или панель разработки в хроме ( или драгонфлай в опере, или бла бла бла )

swa 04.04.2011 20:06

Не вопрос! - могу выложить весь скрипт и страничку.
Только скрипт весь в 544 строки :)

melky 04.04.2011 20:29

тогда лучше лог консоли (выше)

swa 04.04.2011 21:09

Меня смущает конструкция .attr('checked', 'checked');
Не следует ли, что в любом случае устанавливается "checked"?

Может имеет смысл .attr('checked', ''); - но я так пробовал, результат плачевный.

рони 04.04.2011 21:25

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);

swa 04.04.2011 21:41

не хочет :(
всё равно устанавливает "checked"....

Атрибут, от значения которого устанавливается "флажок" равен либо 1 (тогда checked) либо 0.

Поставил data.is_true==1?true:false результат тот же....

swa 05.04.2011 13:13

Всем спасибо!
Ошибка в том, что присваивалось не логическое false/true а строковое....


Часовой пояс GMT +3, время: 02:37.