我正在寻找一个通用的解决方案.
考虑具有相同名称的2个无线电类型输入.提交时,检查的那个确定与表单一起发送的值:
<input type="radio" name="myRadios" onchange="handleChange1();" value="1" />
<input type="radio" name="myRadios" onchange="handleChange2();" value="2" />
Run Code Online (Sandbox Code Playgroud)
取消选择单选按钮时,不会触发更改事件.因此,如果已选择值为"1"的无线电并且用户选择第二个,则handleChange1()不会运行.这给我带来了一个问题(对我来说无论如何),因为没有任何事情我可以捕捉到这种取消选择.
我想要的是复选框组值的onchange事件的解决方法,或者是一个oncheck事件,它不仅检测收音机何时被检查,还检测未选中的时间.
我相信你们中的一些人之前遇到过这个问题.有哪些解决方法(或理想情况下处理此问题的正确方法)?我只是想捕捉改变事件,访问先前检查的无线电以及新检查的无线电.
PS
onclick似乎是一个更好的(跨浏览器)事件来指示何时检查无线电但它仍然无法解决未检查的问题.
我认为为什么onchange for checkbox类型在这种情况下工作是有道理的,因为它会更改它在检查或取消选中时提交的值.我希望单选按钮的行为更像是SELECT元素的onchange但是你能做什么......