我正在尝试使用HTML5验证选择字段;它在Chrome和FF浏览器中工作得非常好,但是当我在IE和Safari中尝试时,它无法正常工作。我尝试使用JavaScript来使其工作,但我仍然遇到同样的问题。请帮帮我。我的代码示例如下:
如何修复它,以便相同的代码适用于所有四种浏览器?
答案 0 :(得分:1)
而不是提交按钮上的onclick
,最好是这样:
<script type="text/javascript">
function validate(f) {
if (f.empty.value == '') { alert('you must enter text'); return false; }
if (f.select_box.value == '') { alert('you must select something'); return false; }
}
</script>
<form name="form1" action="test2" onsubmit="return validate(this)">
...
<input type="submit" value="Go!" />
</form>
修改:validate(this)
将调用validate
函数并将自身(表单)传递为f
。然后,可以按名称引用表单中的字段(例如empty
和select_box
)
希望这会有所帮助:)
答案 1 :(得分:0)
使用支持跨浏览器验证的parsley库以供参考检查此链接:http://www.247techblog.com/use-html5-validations-internet-explorer-tutorial-guide/
答案 2 :(得分:0)
<script type="text/javascript">
window.onload = function() {
var button = document.getElementById("submit-button");
button.onclick = function() {
$('#form-name').validate();
if( $('#form-name').valid() == false) {
return false;
}
}
};
</script>