我有一个验证场景,我有两个单选按钮。然后我有两个输入文本字段。
如果选择了第一个单选按钮,则用户只需在第一个字段中输入数据。如果选择第二个单选按钮,则用户必须在第一个字段中输入数据,在第二个字段中输入日期。
现在,页面加载时默认选择第一个单选按钮。如果用户未选择任何一个按钮在第一个字段中输入任何内容,则会在提交时发生验证错误。
现在,如果选择了第二个单选按钮,并且用户在第一个字段中输入数据而未在第二个字段中输入日期,则会发生验证错误。
我遇到的问题是,如果用户在第一个字段中输入数据但未在第二个字段中输入日期,则选择第一个按钮时会发生验证错误。这不应该发生。如果选择第一个按钮,则发生验证错误的唯一方法是,如果在第一个字段中输入了错误数据,或者在第一个字段中没有输入数据。用户无需在第二个字段中输入日期。那么如何编写JavaScript来反映这些条件呢?
以下是jsfiddle的链接: http://jsfiddle.net/rnnzn/
答案 0 :(得分:1)
这在小提琴中很多,而且似乎在那里不起作用。
我认为你认为无线电输入的工作方式与他们不同。不要检查控件名称的值,检查是否选中了特定的无线电。
例如:
if(document.getElementById('myform').radioName[0].checked){
//validate based on first radio selection
}eles{
//validate based on second radio selection
}
要记住的重要部分是收音机和复选框是数组,它们不像文本和选择输入那样容易处理。