JS中的单选按钮检查不起作用
Radio button check in JS not working?
我想我在这里超级迟钝,所以做了一个小提琴,为什么每当我检查另一个单选按钮时,它都不会保持检查状态?
在小提琴中,它将加载选中"diy"按钮;如果您单击"付费",您将看到单选按钮在警报加载时跳到那里,但随后跳回,即使JS语句在控制台中独立工作。感谢帮助!(顺便说一句,我尝试了 2 种检查方法,都失败了)
https://jsfiddle.net/gzf28hsk/
这是可能中断的功能,但我不知道在哪里
function populateLogistic(type, new_status = null) {
radio_paid = $('input[name="delivery"][value="paid"]')
radio_diy = $('input[name="delivery"][value="diy"]')
if (new_status === null) {
radio_paid.prop("checked", false)
radio_diy.prop("checked", true)
} else if (new_status == "paid") {
alert(new_status)
//radio_paid.checked = true
//radio_diy.checked = false
radio_paid.prop("checked", true)
radio_diy.prop("checked", false)
} else if (new_status == "diy") {
//radio_paid.checked = false
//radio_diy.checked = true
radio_paid.prop("checked", false)
radio_diy.prop("checked", true)
}
}
改为收听change
事件。
更新
实际上,问题是您在事件处理程序中执行e.preventDefault();
,取消事件并撤消单击。
无论如何,最好侦听 change
事件以获取输入更改,因为在那里您确定值实际上已更改,并且如果输入在没有单击的情况下更改,例如使用键盘,也会触发该值。
也就是说,您可以(或应该)使用$('input[name="delivery"]:checked').val()
而不是$(this).val()
来获取所选选项
相关文章:
- 使用map来检查是否为真'不起作用
- 错误检查在Javascript中不起作用
- 对照数组脚本检查文本框中的值不起作用
- JS中的单选按钮检查不起作用
- 为什么这个jQuery代码检查所有复选框不起作用
- 简单的PHP字符串检查不起作用
- 引导程序3在IE8中不起作用(已检查其他答案)
- 我需要让用户输入他的出生日期,并使用javascript检查其形式是否正确.我的代码不起作用
- 我的数字检查器功能不起作用,为什么
- If.else语句检查NaN和空字符串是否在JavaScript中不起作用
- javascript对象检查在IE11中不起作用
- 互联网连接检查不起作用
- 溢出检查不起作用
- 图像存在性检查不起作用
- Live用户名检查不起作用
- 在Angular/Restangular中对返回的JSON值进行空检查不起作用
- 正则表达式-整数检查不起作用
- jQuery.pr()检查不起作用
- 简单的JavaScript检查不起作用
- 使用jQuery进行电子邮件检查不起作用