Установите флажок значения атрибута throw логическое значение - PullRequest
0 голосов
/ 12 марта 2012

Я хотел бы установить значение флажка с некоторым атрибутом, который я поставил с PHP.

Это кажется странным, но выглядит довольно просто, вот мой PHP:

<input type="checkbox" val="'.$key->mes.'" class="mes"/> 

Моя идея:установите флажок, когда значение равно 1, снимите флажок, когда оно равно 0

Я пытаюсь выяснить это с помощью Jquery следующим образом:

$('input:checkbox [val=1]').prop('checked', true);

Но это не работает ... Любые советы?

Ответы [ 5 ]

3 голосов
/ 12 марта 2012

Поскольку вы уже работаете в PHP, как насчет этого:

"<input type='checkbox' val='". $key->mes . "'" . $key->mes > 0 ? "checked='checked'" : "" .  "/>"

Тогда вам не нужно ничего делать на стороне клиента ...

3 голосов
/ 12 марта 2012

вы должны использовать value, а не val атрибут

<input type="checkbox" value="1" />

и

$('input:checkbox[value="1"]').prop('checked', 'checked');

Скрипка: http://jsfiddle.net/kabY3/

1 голос
/ 12 марта 2012

Насколько я знаю, вы не должны использовать .prop('checked',true);, достаточно только звонить .prop("checked"). источник: jquery.com

$ (elem) .prop ("флажок") true (булево) Будет меняться с флажком состояние

Я читал, что использование .prop("checked",false), например, плохо, и вы должны пойти с .removeProp()

Посмотрите документацию .prop:

Но должен быть способ php решить вашу проблему.

0 голосов
/ 12 марта 2012

Пока ваш элемент DOM правильно читает <input type="checkbox" val="1" class="mes"> с помощью ваших любимых инструментов разработчика, я просто буду делать $('input[val=1]').prop('checked', true);

Вот jsfiddle: http://jsfiddle.net/remibreton/u96pc/

0 голосов
/ 12 марта 2012

я думаю, что проще сделать это в php:

<?php
$ch="";
if($key->mes==1) $ch=' checked="checked"';
echo '<input type="checkbox" val="'.$key->mes.'" class="mes"'.$ch.'/> '
?>

, если вы хотите сделать это в jquery, попробуйте то, что предлагает @EvilP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...