HTML5验证无效On On OnChange选择框表单提交。
如果我使用提交按钮验证工作,
但我需要onChange
表单提交和html%验证
<form action="do.php" method="post">
<select id="myselect" name="myselect" onchange="this.form.submit()" required="">
<option value="">
select
</option>
<option value="1">
One
</option>
<option value="2">
Two
</option>
<option value="3">
Three
</option>
<option value="4">
Four
</option>
</select> <select id="myselect2" name="myselect2" onchange="this.form.submit()" required="">
<option value="">
select
</option>
<option value="5">
five
</option>
<option value="6">
six
</option>
<option value="7">
seven
</option>
</select>
</form>
这是条件在更改表单提交时没有验证其他选择框。 请帮忙 。
答案 0 :(得分:1)
HTML5验证仅在使用HTML结构提交表单时适用。如果使用脚本提交,则不会进行HTML5验证。因此,您需要在JavaScript中编写自己的验证代码。
参考:HTML5 LC,4.10.22.3 Form submission algorithm,其中第4项列出了执行验证的条件,包括未设置“从submit()
方法标志提交”的要求。
答案 1 :(得分:0)
您可以使用此'hack'http://jsfiddle.net/MGhA7/。
您指定<select required="required">
,因此值不能为空,然后添加<option value="" selected disabled>empty</option>
,因此默认值为空,无法再次选择。
编辑:多一点解释。
这样,表单无法提交,因为“selected”值实际上是“”(空),“required”属性不允许;当用户更改选择时,由于“禁用”属性,无法再次选择默认值。