Javascript 验证HTML表单并在PHP中使用$\u GET方法
我试图创建一个登录,用户在其中输入用户名和密码,然后点击提交按钮,JavaScript代码运行以验证是否输入了字符串。如果结果为false,则应显示Javascript 验证HTML表单并在PHP中使用$\u GET方法,javascript,php,html,Javascript,Php,Html,我试图创建一个登录,用户在其中输入用户名和密码,然后点击提交按钮,JavaScript代码运行以验证是否输入了字符串。如果结果为false,则应显示警报(“…”),如果结果为true,则应继续提交 然而,当我去验证提交时,它并没有把它带到链接的php文件中,而是把我带到index.php(这不是我链接到的文件),给我一个404错误,说链接是错误的或过时的,我不知道为什么或在哪里链接错误 ////HTML//// 函数validateThis(){ var username=document.g
警报(“…”)
,如果结果为true,则应继续提交
然而,当我去验证提交时,它并没有把它带到链接的php文件中,而是把我带到index.php(这不是我链接到的文件),给我一个404错误,说链接是错误的或过时的,我不知道为什么或在哪里链接错误
////HTML////
函数validateThis(){
var username=document.getElementById('username');
var password=document.getElementById('userpass');
如果((username.value==”)| |(password.value==”){
警报(“请输入您的详细信息”);
返回false;
}
否则{
返回true;
}
}
////PHP////
您正在按Id(
getElementById
)检查元素,并且应该使用getElementsByName
。
您还可以使用document.forms['myForm'].username.value==”
,即:
<html>
<head>
<script type="text/javascript">
function validateThis(){
if(document.forms['myForm'].username.value == "")
{
alert("empty");
return false;
}
return true;
}
</script>
</head>
<body>
<form id="myForm" name="myForm" action=""
method="get" onSubmit="validateThis()">
<input type="text" name="username"/>
<input type="submit" value="Login"/>
</form>
</body>
</html>
<?php
echo !empty($_GET['username']) ? "Hello ". $_GET['username'] : "";
?>
函数validateThis(){
if(document.forms['myForm'].username.value==“”)
{
警报(“空”);
返回false;
}
返回true;
}
您正在按Id(
getElementById
)检查元素,并且应该使用getElementsByName
。
您还可以使用document.forms['myForm'].username.value==”
,即:
<html>
<head>
<script type="text/javascript">
function validateThis(){
if(document.forms['myForm'].username.value == "")
{
alert("empty");
return false;
}
return true;
}
</script>
</head>
<body>
<form id="myForm" name="myForm" action=""
method="get" onSubmit="validateThis()">
<input type="text" name="username"/>
<input type="submit" value="Login"/>
</form>
</body>
</html>
<?php
echo !empty($_GET['username']) ? "Hello ". $_GET['username'] : "";
?>
函数validateThis(){
if(document.forms['myForm'].username.value==“”)
{
警报(“空”);
返回false;
}
返回true;
}
我们无法从您发布的内容判断发生了什么。听起来您的文件名不正确,或者.htaccess文件配置不正确等等。但是我们不能说,因为你的描述不清楚。请阅读。php文件是否在同一文件夹中?拼写正确吗?@Jeff Yep,检查了几次!我看不出缺少了什么。@Ed Cottrell很抱歉,我现在就编辑它。你没有
id
,看你的控制台就会知道这一点;未定义。我们无法从您发布的内容判断发生了什么。听起来您的文件名不正确,或者.htaccess文件配置不正确等等。但是我们不能说,因为你的描述不清楚。请阅读。php文件是否在同一文件夹中?拼写正确吗?@Jeff Yep,检查了几次!我看不出缺少了什么。@Ed Cottrell很抱歉,我现在就编辑它。你没有id
,看你的控制台就会知道这一点;未定义。好位置getElementsByName
返回数组/节点列表,因此您需要添加一个[0]
实际上我已经用更好的解决方案更新了答案。tks用于反馈;)。。。现在我奇怪的评论让我看起来很傻…哈伊特不是!我花了一段时间才发现错误,但我想我找到了答案:if(((username.value==null | | | username.value==”)| | |(password.value==null | | password.value==”){alert(“请输入您的详细信息”);return false;
good spot!getElementsByName
返回数组/节点列表,因此需要添加[0]
事实上,我已经用一个更好的解决方案更新了答案。谢谢你的反馈;)…现在我奇怪的评论看起来很傻…哈伊特不是!我花了一段时间才发现错误,但我想我还是找到了:如果((username.value==null | | | username.value==”“)| |(password.value==null | | password.value==”“)){提醒(“请输入您的详细信息”);返回false;
<html>
<head>
<script type="text/javascript">
function validateThis(){
if(document.forms['myForm'].username.value == "")
{
alert("empty");
return false;
}
return true;
}
</script>
</head>
<body>
<form id="myForm" name="myForm" action=""
method="get" onSubmit="validateThis()">
<input type="text" name="username"/>
<input type="submit" value="Login"/>
</form>
</body>
</html>
<?php
echo !empty($_GET['username']) ? "Hello ". $_GET['username'] : "";
?>