阻止提交订单而不填写所有输入?

时间:2013-11-29 13:07:40

标签: javascript php html

有什么方法可以告诉用户当他点击提交按钮(其动作PHP在不同文件中)时他没有填写所有输入(而不是提交空字段)并让他留在页面并更正它(虽然动作php在不同的文件中)?谢谢

3 个答案:

答案 0 :(得分:4)

无需JavaScript!只需使用HTML5 required属性:

<input type="text" name="username" placeholder="Enter your username" required />

显然,您还必须在服务器端验证它,因为用户可以使用Inspect Element of Firebug更改此代码。但这很容易:

<?php

if (isset($_POST['username') && $_POST['username'] != '') {
    // Passed
} else {
    // Failed
}

答案 1 :(得分:0)

试试这个javascript代码

<SCRIPT>
function sub()
    {
    var usrname=document.getElementById("username").value;
    usrname=usrname.replace(/ /g,""); //for checking user isnt just entering spaces
    if(usrname!="")
    {
    document.getElementById("frm").submit();
    }
    }
</SCRIPT>

http://jsfiddle.net/RhLyE/3/

答案 2 :(得分:0)

是的,您可以处理表单的onsubmit事件。见here。如果浏览器已停用javascript,则您的php动作脚本仍可能会收到无效数据。