日期:2014-05-16  浏览次数:20374 次

如何用js屏蔽按回车提交表单
如何用js屏蔽按回车提交表单

HTML code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>test</title>    
    <script language="JavaScript">
    <!--
        var $=function(sId){return document.getElementById(sId);};

        function chkform(formId)
        {
            if (formId.myname.value=="")
            {
                alert("名字 不能为空");
                return false;
            }
            return true;
        }
        function chkchk(e)
        {
            if (e.keyCode==13)
            {
                alert(e.keyCode);
                return false;
            }
            return true;
        }
    //-->
    </script>
</head>

<body>

<form name="adform" action="save.asp" method="post" onkeydown="javascript:return chkchk(event);" onsubmit="javascript:return chkform(this);">

名字:<input type="text" name="myname" value="" /><br/>

<input type="submit" name="submitbtn" value="提交" />

</form>

</body>
</html>




上面的代码在IE下 是正常的。能屏蔽回车。

在谷歌浏览器 和火狐浏览器下 无效。 

怎么样在上面的代码接触上改?

要求:

1, 要保留submit按钮。不能改成button
2,保留2个验证函数 onkeydown="javascript:return chkchk(event);" onsubmit="javascript:return chkform(this);"
  并且 这2个 函数就是要这样直接和标签form 一起写。
  不能直接用 onkeydown="if(event.keyCode==13){return false;}"

所以,只能在 函数chchk()里面修改。 要求回车 禁止提交表单。

要在谷歌和火狐下 通过。


跪求


------解决方案--------------------
JScript code

function chkchk(e)
{
    if(window.event)
    {
        if (e.keyCode==13)
        {
            alert(e.keyCode);
            return false;
        }
        return true;
    }
    else
    {
        if (e.which==13)
        {
            e.preventDefault();
            return false;
        }
        return true;
    }
}

------解决方案--------------------
测试通过

------解决方案--------------------
把js里面的那个HTML注释删除