我正在创建一个包含多个字段的网页。我不希望php代码执行,除非所有字段都填写完毕,否则会产生错误。

这是我的html代码:

 <html>
 <body bgcolor="AliceBlue">


<form action="WorkingVersionV2.php" method="post">
<p>Which database do you wish to access? <center> <input type="text" name="database"/>     </center></p>
<p>What table would you like to examine? <center><input type="text" name="oldtablename"/></center></p>
<p>What would you like to name the table produced? <center><input type="text" name="newtablename"/></center></p>
<p>Start at row: <center><input type="text" name="startrow"/></center></p>
<p>Number of rows to search through:<center> <input type="text" name="numberrows"/>     </center></p>
<center><input type = "submit" onclick="checkFields()"/></center>
</form>

<script type="text/javascript">
function checkFields()
{
    var x = document.getElementById("database").innerHTML;
    if(x=="")
   {
        alert("You forgot to enter a database name");
       }
}
</script>

</body>
</html>


我认为如果未填写字段,抛出一个弹出框将使用户停止。但是,当用户单击“提交”时,不会抛出弹出框,并且我不确定一旦关闭php代码是否仍将执行。

HTML / javascript不是我的专长,如果您有更好或更简单的方法,请告诉我。

最佳答案

如果您将输入type = submit用于非javascript浏览器,则需要进行一些更改。

您的javascript函数需要返回这样的值:

<script type="text/javascript">
function checkFields()
{
    var x = document.getElementById("database").innerHTML;
    if(x=="")
    {
        alert("You forgot to enter a database name");
        return false;
    }
    return true;
}
</script>


您应该像这样更改输入按钮:

<input type="submit" onclick="return checkFields();" />

关于php - 如果未填写字段,则停止带有弹出框的HTML POST的进度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11197288/

10-12 12:49
查看更多