testingcheckbox是否与jQuery检查

如果checkbox被选中,那么我只需要取值为1; 否则,我需要得到它为0.我如何使用jQuery做到这一点?

$("#ans").val()在这种情况下总会给我一个权利:

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

使用.is(':checked')来确定它是否被选中,然后相应地设置你的值。

更多信息在这里。

 $("#ans").attr('checked') 

会告诉你,如果它被检查。 您也可以使用第二个参数true / false来选中/取消选中checkbox。

 $("#ans").attr('checked', true); 

根据评论,使用prop而不是attr 。 例如:

 $("#ans").prop('checked') 

只需使用$(selector).is(':checked')

它返回一个布尔值。

 // use ternary operators $("#ans").is(':checked') ? 1 : 0; 

Stefan Brinkmann的答案非常好,但对于初学者来说是不完整的(省略了variables赋值)。 只是为了澄清:

 // this structure is called a ternary operator var cbAns = ( $("#ans").is(':checked') ) ? 1 : 0; 

它是这样工作的:

  var myVar = ( if test goes here ) ? 'ans if yes' : 'ans if no' ; 

例:

 var myMath = ( 1 > 2 ) ? 'yes' : 'no' ; alert( myMath ); 

警报“不”

如果这是有帮助的,请注意Stefan Brinkmann的回答。

你可以试试这个:

 $('#studentTypeCheck').is(":checked"); 

我以前find同样的问题,希望这个解决scheme可以帮助你。 首先,添加一个自定义属性到您的checkbox:

 <input type="checkbox" id="ans" value="1" data-unchecked="0" /> 

编写一个jQuery扩展来获取值:

 $.fn.realVal = function(){ var $obj = $(this); var val = $obj.val(); var type = $obj.attr('type'); if (type && type==='checkbox') { var un_val = $obj.attr('data-unchecked'); if (typeof un_val==='undefined') un_val = ''; return $obj.prop('checked') ? val : un_val; } else { return val; } }; 

使用代码获取checkbox值:

 $('#ans').realVal(); 

你可以在这里testing

 $('input:checkbox:checked').val(); // get the value from a checked checkbox 

你也可以使用:

 $("#ans:checked").length == 1; 
 <input type="checkbox" id="ans" value="1" /> 

jquery: var test= $("#ans").is(':checked')并返回true或false。

在你的function:

 $test =($request->get ( 'test' )== "true")? '1' : '0'; 

使用:

 $("#ans option:selected").val() 
 function chkb(bool){ if(bool) return 1; return 0; } var statusNum=chkb($("#ans").is(':checked')); 

如果checkbox被选中,statusNum将等于1,如果不是,则为0。

编辑:您可以添加到该function的DOM。

 function chkb(el){ if(el.is(':checked')) return 1; return 0; } var statusNum=chkb($("#ans")); 

有几个选项有像…

  1. $("#ans").is(':checked') 2. $("#ans:checked") 3. $('input:checkbox:checked'); 

如果所有这些选项都返回true,那么你可以设置值accourdingly。

我最近遇到了一个案例,当用户点击button时,需要检查checkbox的值。 唯一正确的方法是使用prop()属性。

 var ansValue = $("#ans").prop('checked') ? $("#ans").val() : 0; 

这在我的情况下工作,也许有人会需要它。

当我试着.attr(':checked')checked返回,但我想布尔值和.val()返回的属性value

尝试这个

 $('input:checkbox:checked').click(function(){ var val=(this).val(); // it will get value from checked checkbox; }) 

这里的标志是真实的,如果检查,否则为false

 var flag=$('#ans').Attr('checked'); 

再一次,这将使得cheked

 $('#ans').Attr('checked',true); 

你可以通过这两种方法得到值(真/假)

 $("input[type='checkbox']").prop("checked"); $("input[type='checkbox']").is(":checked"); 

如果你想要整数值的选中或不试试:

$( “#答:检查”)的长度。