显式 .trigger("click") 未设置为真 jquery
Explicit .trigger("click") is not setting checked to true jquery
在我的 js 文件中,当 "click" 事件发生在复选框上时会触发一个函数,并在单击时检查哪些值是 "checked" 并选择这些值。
我正在点击像 :: $('#id').trigger("click"); or $('#id').click()
这样的代码,在这种情况下,调用 "click" 上触发的函数,但是当它检查 if($('#id').checked)
时,这个 returns false ,并且永远不会调用 "if-body"。
为什么当我触发对复选框的点击时,该元素的 checked 没有设置为 true?
因为$('#id')
没有checked
属性。所以 $('#id').checked
是 undefined
。您可以看到,即使单击复选框本身控制台 undefined
$('#id').on('click', function() {
console.log($('#id').checked);
});
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<input id="id" type="checkbox" />
有一些方法可以检查复选框是否被选中。
$('#id').on('click', function() {
console.log(
$('#id').is(':checked'),
$('#id').get(0).checked,
$('#id').prop('checked')
);
});
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<input id="id" type="checkbox" />
还有按钮
$('#id').on('click', function() {
if ($('#id').is(':checked')) {
console.log('checked!!')
}
});
$('button').on('click', function() {
$('input').trigger('click');
})
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<input id="id" type="checkbox" />
<button>trigger check</button>
在我的 js 文件中,当 "click" 事件发生在复选框上时会触发一个函数,并在单击时检查哪些值是 "checked" 并选择这些值。
我正在点击像 :: $('#id').trigger("click"); or $('#id').click()
这样的代码,在这种情况下,调用 "click" 上触发的函数,但是当它检查 if($('#id').checked)
时,这个 returns false ,并且永远不会调用 "if-body"。
为什么当我触发对复选框的点击时,该元素的 checked 没有设置为 true?
因为$('#id')
没有checked
属性。所以 $('#id').checked
是 undefined
。您可以看到,即使单击复选框本身控制台 undefined
$('#id').on('click', function() {
console.log($('#id').checked);
});
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<input id="id" type="checkbox" />
有一些方法可以检查复选框是否被选中。
$('#id').on('click', function() {
console.log(
$('#id').is(':checked'),
$('#id').get(0).checked,
$('#id').prop('checked')
);
});
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<input id="id" type="checkbox" />
还有按钮
$('#id').on('click', function() {
if ($('#id').is(':checked')) {
console.log('checked!!')
}
});
$('button').on('click', function() {
$('input').trigger('click');
})
<script src="https://code.jquery.com/jquery-3.1.0.js"></script>
<input id="id" type="checkbox" />
<button>trigger check</button>