Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery验证,单选按钮组,嵌套问题_Javascript_Jquery_Html_Validation - Fatal编程技术网

Javascript jQuery验证,单选按钮组,嵌套问题

Javascript jQuery验证,单选按钮组,嵌套问题,javascript,jquery,html,validation,Javascript,Jquery,Html,Validation,我正在尝试添加一个自定义方法来验证一组单选按钮,使用jqueryvalidate插件的v1.9 与之相反,只要任何类规则仅应用于其中一个输入,则单选按钮输入可能具有相同的name属性。jqueryvalidate然后将您的输入组视为单个输入 当您的输入是共同父项的子项时,即 <input type="radio" name="radiogroup" value="1" class="input-shipping" checked="checked"> <input type="

我正在尝试添加一个自定义方法来验证一组单选按钮,使用jqueryvalidate插件的v1.9

与之相反,只要任何类规则仅应用于其中一个输入,则单选按钮输入可能具有相同的name属性。jqueryvalidate然后将您的输入组视为单个输入

当您的输入是共同父项的子项时,即

<input type="radio" name="radiogroup" value="1" class="input-shipping" checked="checked">
<input type="radio" name="radiogroup" value="2">
<input type="radio" name="radiogroup" value="3">
<input type="radio" name="radiogroup" value="4">

没有调用验证规则的原因是使用了自定义单选按钮,将输入的CSS显示值设置为“无”,并设置了伪元素的样式以代替原始输入

一旦更改为可见性:隐藏;验证器似乎接受了规则OK

要根据选定输入的值创建自定义方法,需要进一步过滤:

$.validator.addMethod("dateselected", function(value, element) {
    var radios = $('input[name='+element.name+']'),
    val = radios.filter(':checked')[0].value;
    console.log(val);
});
$.validator.addClassRules({
    "input-shipping" : {
        required: true,
        dateselected: true
    }
});

$.validator.addMethod("dateselected", function(value, element) {
    console.log(element);
});
$.validator.addMethod("dateselected", function(value, element) {
    var radios = $('input[name='+element.name+']'),
    val = radios.filter(':checked')[0].value;
    console.log(val);
});