【问题标题】:Can't cllick submit button无法点击提交按钮
【发布时间】:2015-06-19 02:51:32
【问题描述】:

我是一个新手,正在尝试学习创建表单页面。有人能告诉我为什么提交按钮不起作用吗?我认为拥有javascript函数可以解决这个问题。谢谢

<script type="text/javascript">
function submitform()
{
document.forms["contactform"].submit();
}

</head>
<body>

        <div id="contact-form">
                       <form method="POST" id="contactform" action="bespoke-form-handler.php">
                            <div>
                                <label for="name">Name:</label>
                                <input type="text" id="name" name="user_name" />
                            </div>
                            <div>
                                <label for="mail">E-mail:</label>
                                <input type="email" id="mail" name="user_email" />
                            </div>


                            <div class="button">
                                <button type="submit" name="submit"><a href="javascript: submitform()">Submit</a></button>
                            </div>
                        </form>
<script language="JavaScript">
var frmvalidator  = new Validator("contactform");
frmvalidator.addValidation("name","req","Please provide your name"); 
frmvalidator.addValidation("mail","req","Please provide your email"); 
frmvalidator.addValidation("mail","email","Please enter a valid email address"); 
</script>

</body>

【问题讨论】:

    标签: javascript php html


    【解决方案1】:

    问题在于按钮名称,因为你已经将它用作submitdocument.forms["contactform"].submit 将引用元素而不是提交方法,因此会导致类似Uncaught TypeError: document.forms.contactform.submit is not a function 的错误

    <button type="submit" name="someothername"><a href="javascript: submitform()">Submit</a></button>
    

    演示:ProblemSolution

    【讨论】:

    • 它只显示类型错误:a 为空。不确定是否与此表格有关
    【解决方案2】:

    &lt;button&gt; 标签中包含&lt;a&gt; 标签是没有意义的,因为它会阻止通过提交按钮自动完成的标准 HTML 表单提交,只需将其删除即可。

    你也不需要你的第一个 JavaScript 函数来提交你的表单,提交按钮会处理这个。

    【讨论】:

      【解决方案3】:

      将提交按钮更改为

      <input type="submit" name="submit" />
      

      【讨论】:

      • 如果你想调用一个 javascript 函数而不是通过 onClick="functionName()" 调用它
      • 我在上面的按钮标签下方添加了这一行,它创建了一个新字段,然后旧按钮开始工作。当我将按钮标签编辑为“输入”标签时,它不起作用。奇怪。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-23
      • 2016-11-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多