移动页面时验证php中的输入文本

时间:2011-03-05 22:36:50

标签: php javascript validation

我知道在提交表单时如何验证基本输入(文本)。但是,我遗失了关于在离开网页时如何验证输入(文本)的方法。即使使用JS,由于“表单操作”属性,我无法让它保持在同一页面上。

输入和提交的HTML代码

<form name="form1" action="second.php" **onsubmit="return error()"** method="post">
<input style="" name="hall" type="text"><br>
<input name="Move" style="height: 23px" type="submit" value="Move">
</form>

用于验证的PHP代码

<?php 
if (isset($_POST['Move'])) {
if(($_POST['hall']) != "Hallway")
{
  echo "Not among available rooms";
}
?>

这也是JS代码

<script type="text/javascript">
function error()
{
    var x=document.forms["form1"]["hall"].value
    if (x==null || x=="" || x!="next")
    {
        alert("Wrong entry. Try again!!!");
        return false;
    }
}
</script>

2 个答案:

答案 0 :(得分:0)

如果存在second.php页面,则以下代码在我的服务器上运行。 (顺便说一下,我在值之后添加了;,但它似乎没有它。)

您是否在表单后面放了js脚本?也许它会影响。

<html>

<script type="text/javascript">
function error()
{
    var x=document.forms["form1"]["hall"].value;
    if (x==null || x=="" || x!="next")
    {
        alert("Wrong entry. Try again!!!");
        return false;
    }
}
</script>


<body>

<form name="form1" action="second.php" onsubmit="return error()" method="post">
<input style="" name="hall" type="text"><br>
<input name="Move" style="height: 23px" type="submit" value="Move">
</form>


</body>
</html>

答案 1 :(得分:0)

我能想到的其他事情:

- 页面上是否有任何JS错误会阻止此脚本运行?它也可以在我的服务器上运行。

- 您是否有另一个名称相同的HTML元素?

- 我假设**是用于强调代码中的那个区域。如果没有,当然,他们需要被删除。

唯一可能阻止你的“返回false”工作的方法是,如果你有某种JavaScript错误会导致脚本无法运行。

如果您的网页上有其他代码,请发布,我们会看看!