我95%在那里写了一个HTML5'必需'属性后备,我有一个小问题,我已经走到了我的知识的尽头!
什么有效: 检测“必需”属性,以多种方式循环并警告用户(提交并将数据输入到字段中)。
问题: 我正在采取更进一步的形式,并希望也需要复选框和单选按钮。通过这样做,我需要为每个radio / checkbox添加一个必需的属性。我需要找出如何区分按钮组,因为目前您需要勾选/取消两个按钮组以便表单进行验证并让您提交。所以简而言之,我有三个必需的无线电,例如,每个都需要被勾选,我如何检测,同时循环输入所需的无线电/检查之一 - 我认为这将通过匹配' name'属性,如果名称组中没有选择,则仅警告一个错误。
这是我的循环状态,你可以看到我也检测到输入类型,只是不确定接下来的步骤。如果有人愿意帮忙,jsFiddle也会在下面。非常感谢。
// loop through class name required
$('.required').each(function () {
// this
var self = $(this)
// check shorthand if statement for input[type] detection
var checked = (self.is(':checkbox') || self.is(':radio')) ? self.is(':not(:checked)') : false
// run the empty/not:checked test
if (self.val() === '' || checked) {
// show error if the values are empty still (or re-emptied)
// this will fire after it's already been checked once
self.siblings('.form-error').show()
// stop form submitting
e.preventDefault()
// if it's passed the check
} else {
// hide the error
self.siblings('.form-error').hide()
}
})
这是我的jsFiddle:http://jsfiddle.net/zykF9/
答案 0 :(得分:0)
使用类选择器,您可以将其存档 http://jsbin.com/owokuw/1/edit
UPDATE
为了更容易理解,这里有更新:
<input type="radio" name="myradio" class="myradio" />
<input type="radio" name="myradio" class="myradio" />
<input type="radio" name="myradio" class="myradio" />
<input type="radio" name="myradio" class="myradio" />
<input type="hidden" id="selectedRadioYes" />
<input type="button" id="botton" value="Botton" />
Jquery的
$(".myradio").click(function(){
$("#selectedRadioYes").val(1);
});
$("#botton").click(function(){
if($("#selectedRadioYes").val() === "1")
alert("you can go on");
else
alert("need select one radio");
});