Обновить значение на основе: проверенный статус - PullRequest
1 голос
/ 05 июля 2010
<input type="checkbox" name="feature1" value="0" />

Если отмечено, значение = "1"; иначе значение = "0";

if ( $('input[name=feature1]').is(':checked') ) {
  $('input[name=feature1]').val('1');
}

Я думаю, что вышеупомянутый jQuery может работать, но его одноразовая проверка, как мне сделать так, чтобы каждый раз, когда флажок был отмечен / установлен, значение становилось 1, иначе 0?

Большое спасибо

Ответы [ 2 ]

1 голос
/ 05 июля 2010

Я бы дал вводу идентификатор, просто чтобы было немного проще написать свой jQuery - для целей этого ответа я сделаю вид, что мы продублировали имя.

jQuery("#feature1").click(function() {
   if (this.checked) {
      jQuery(this).val(1);
   } else {
      jQuery(this).val(0);
   }
});
1 голос
/ 05 июля 2010
$('input[name=feature1]').click(function(){
    if ($(this).is(':checked') ) {
      $(this).val('1');
    } else {
      $(this).val('0');
    }
});

или

$('input[name=feature1]').click(function(){
    if (this.checked) {
      $(this).val('1');
    } else {
      $(this).val('0');
    }
});

или

намного лучше

$('input[name=feature1]').click(function(){
      $(this).val(this.checked ? 1:0);
});

и, как я и думал, есть еще гораздо лучший способ ..

$('input[name=feature1]').click(function(){
      this.value = this.checked ? 1:0;      
});​
...