谁能告诉我为什么这条线不起作用?(我正在尝试访问复选框的 value 属性并将其写入我的变量,否则如果它没有检查空字符串)
var ri_ort = $('#ri_ort').attr('checked')?$('#ri_ort').val():'';
多谢
谁能告诉我为什么这条线不起作用?(我正在尝试访问复选框的 value 属性并将其写入我的变量,否则如果它没有检查空字符串)
var ri_ort = $('#ri_ort').attr('checked')?$('#ri_ort').val():'';
多谢
尝试is
:
var ri_ort = $('#ri_ort').is(':checked') ? $('#ri_ort').val() : '';
checked
在 jQuery 中,您可以disabled
使用以下prop
方法检查属性:
$('#ri_ort').prop('checked'); // returns true or false
prop
也可用于设置值:
$('#ri_ort').prop('checked', false); // removes the `checked` attribute
这是一个例子:http: //jsfiddle.net/BeKa4/1/
从 jQuery 1.6 开始,attr
方法不返回布尔值,它返回undefined
,你应该使用prop
oris
方法来代替:
var $elem = $('#ri_ort');
var ri_ort = $elem.prop('checked') ? $elem.val(): '';
或者,如果您想收听更改事件:
$(function() {
var ri_ort = '';
$('#ri_ort').change(function(){
ri_ort = this.checked ? this.value : '';
})
})