我需要检查我的网页上表单中的文本框是否已被选中。我在 html 代码中实现了文本框,如下所示:
<input type="checkbox" id="language1" name="language1"
value="Python"> Python
我尝试使用以下代码来检查复选框是否已被选中:
if($('#language1').checked){
// do some stuff }
这不起作用 - 网站从未识别出选中的框。然后我浏览了 Stack Overflow,发现了上述的两种替代方案,即:
if($('#language1')[0].checked){
和
if($('#language1').is(':checked'));
这两种替代方案都有效,但我最初的实现却没有。我不明白为什么会出现这种情况 - 我认为所有三个选项本质上应该做同样的事情?渴望弄清楚这一点,所以希望得到解释。
最佳答案
I thought all three options should essentially do the same thing?
没有。因为 checked
属性是输入元素的属性。
$(selector)
返回一个包含元素但不是元素本身的 jQuery 对象,并且 jQuery 对象没有 checked
属性
使用 $(selector)[0]
返回 jQuery 对象中第一个匹配的元素...属性存在的位置
关于javascript - 使用 jQuery 检查复选框是否被选中 : different methods?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57400569/