Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Не работает attr checked у чекбокса! (https://javascript.ru/forum/jquery/24391-ne-rabotaet-attr-checked-u-chekboksa.html)

FRIE 28.12.2011 11:44

Не работает attr checked у чекбокса!
 
alert($(this).next().attr("checked"));


Выводит "checked" если следующий чекбокс выбран, и undefined если не выбран

$(this).next().attr("checked","");


По идее должен снимать отметку с чекбокса, но происходит ровно наоборот, отметка ставится на чекбоксе!

Помогите разобраться плиииз!

FRIE 28.12.2011 11:47

Код чекбоксов
<input type="checkbox">
          <input type="checkbox">

FRIE 28.12.2011 12:04

Не работает даже вот этот пример =) чек ставится а анчек - нет

<label><input type="checkbox" id="c"> &lt;-- это подопытный checkbox</label>
        <input type="button" onclick="$(&quot;#c&quot;).attr(&quot;checked&quot;,&quot;checked&quot;)" value="Check">
        <input type="button" onclick="$(&quot;#c&quot;).attr(&quot;checked&quot;,&quot;&quot;)" value="Uncheck">



Народ! попробуйте пожалуйста этот пример у себя и отпишитесь


Этот пример взял тут http://www.linkexchanger.su/2008/62.html и там он работает

GuardCat 28.12.2011 12:20

Без jquery и атрибутов:

<input type="checkbox" id="c"> &lt;— это подопытный checkbox</label>
<input type="button" value = "Check" onclick="document.getElementById('c').checked = true">
<input type="button" value = "Uncheck" onclick="document.getElementById('c').checked = false">


Почему не работало у вас? Возможно, это вам подскажет:
<input type="checkbox" id="c" checked = "false">

FRIE 28.12.2011 12:29

Спасибо за вариант с чистым яваскриптом. Ваш пример у меня работает.
checked = "false" у меня не стоит.

Я не понимаю обычный яваскрипт, только jquery =) могли бы вы написать код который будет выбирать следующий элемент аналогично next и предыдущий элемент, как в jquery?

И если не трудно, запустите мой код у себя, будет ли работать у Вас?

GuardCat 28.12.2011 12:35

Цитата:

Сообщение от FRIE
checked = "false" у меня не стоит.

Стоит-стоит. Вы присваиваете атрибуту checked значение false. Но если у элемента в принципе есть атрибут checked, независимо от его значения, он отмечен.

JS я присваиваю значение не Атрибуту, а Свойству.
Кажется, вот эта статья вам поможет понять разницу.
Цитата:

Сообщение от FRIE
Я не понимаю обычный яваскрипт, только jquery =)

У меня с точностью до наоборот =).

Цитата:

Сообщение от FRIE
И если не трудно, запустите мой код у себя, будет ли работать у Вас?

Не будет. Я уже написал вам почему.

FRIE 28.12.2011 12:56



attr("checked","") - вот эти кавычки будут означать что свойство checked привязывается значение false. Я правильно понял? :)

FRIE 28.12.2011 13:00




До меня дошло! Спасибо Вам большое!

$(this).next().attr("checked",false);


Я уже так пробовал только до этого почемуто писал вот так

$(this).next().attr("checked","false");


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