<head>
<script>
function checkform(formobj){
var formok=true;
if(formobj.myfield.value==""){
window.alert("you must enter a value in the field");
formobj.myfield.focus();
formok=false;}
if(formok){formobj.submit();}}
</script>
</head>
<body>
<form name="myfield" action="2.html" >
text field: <input type="text" name="myfield"><br>
<input type="button" value="submit" onClick="checkform(this.form);">
</form>
</body>
上面这段代码我试验了一下,怎么在不输入的情况下,直接点ENTER也能进入目标网页啊?高手提示一下,好像在INPUT TYPE是SUBMIT的情况下就没这种情况,我想知道怎么回事,区别在哪?
你这代码可就有问题了,,,这个submit按钮和普通的按钮是不一样的 只要点了虽然会出发事件,但是肯定会提交的,,除非你的form的onsubmit事件返回的是true,,,,你这样设定 就算 值为空,,虽然有弹窗 但是照样提交,,至于回车键,默认的 提交按钮的快捷键就是回车,当然会提交了
所以你的代码是错的 正确代码如下
<head>
<script>
function checkform(formobj){
var formok=true;
if(formobj.myfield.value==""){
window.alert("you must enter a value in the field");
formobj.myfield.focus();
formok=false;
}
return formok;
}
</script>
</head>
<body>
<form name="myfield" action="2.html" onsubmit="return checkform(this.form)">
text field: <input type="text" name="myfield"><br>
<input type="button" value="submit" onClick="checkform(this.form);">
</form>
</body>
<input type="button" value="submit" onClick="return checkform(this.form);">
不要这个
if(formok){formobj.submit();}}
还有
看一下alert(formobj.myfield.value=="")是什么
onClick="return checkform(this.form);"
checkform(this.form) 这个函数要返回一个true 或者是false的值
function checkform(formobj){
var formok=true;
if(formobj.myfield.value==""){
window.alert("you must enter a value in the field");
formobj.myfield.focus();
return false;
}
else
{
return true;
}