如果复选框被选中,那么我只需要得到值为1;否则,我需要得到它为0。我如何使用jQuery做到这一点?
$("#ans").val()在这种情况下总是会给我一个right:
<input type="checkbox" id="ans" value="1" />
如果复选框被选中,那么我只需要得到值为1;否则,我需要得到它为0。我如何使用jQuery做到这一点?
$("#ans").val()在这种情况下总是会给我一个right:
<input type="checkbox" id="ans" value="1" />
当前回答
如果你想要整数值检查或不检查,尝试:
$("#ans:checked").length
其他回答
我最近经历了一个案例,当用户单击按钮时,我需要检查复选框的值。唯一正确的方法是使用prop()属性。
var ansValue = $("#ans").prop('checked') ? $("#ans").val() : 0;
这在我的情况下是有效的,也许有人会需要它。
当我尝试了.attr(':checked'),它返回checked,但我想要布尔值和.val()返回属性值的值。
@StefanBrinkmann的回答很好,但对初学者来说不完整(省略了变量赋值)。澄清一下:
// 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 );
提示“不”
<input type="checkbox" id="ans" value="1" />
Jquery: Var test= $("#ans").is(':checked') 它返回true或false。
在你的职责范围内:
$test =($request->get ( 'test' )== "true")? '1' : '0';
首先检查值是否被检查
$("#ans").find("checkbox").each(function(){
if ($(this).prop('checked')==true){
var id = $(this).val()
}
});
否则设置为0值
使用.is(':checked')来确定它是否被检查,然后相应地设置你的值。
更多信息请点击这里。