この行が機能しない理由を誰か教えてもらえますか? (チェックボックスの値プロパティにアクセスして変数に書き込もうとしています。空の文字列がチェックされていない場合)
var ri_ort = $('#ri_ort').attr('checked')?$('#ri_ort').val():'';
ありがとう
この行が機能しない理由を誰か教えてもらえますか? (チェックボックスの値プロパティにアクセスして変数に書き込もうとしています。空の文字列がチェックされていない場合)
var ri_ort = $('#ri_ort').attr('checked')?$('#ri_ort').val():'';
ありがとう
試してみてくださいis
:
var ri_ort = $('#ri_ort').is(':checked') ? $('#ri_ort').val() : '';
jQuery では、次のメソッドchecked
を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
method はブール値を返さず、 を返します。代わりにorメソッドundefined
を使用する必要があります。prop
is
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 : '';
})
})