php中调用js的方法,用的ajax做的一个表单提交无刷新,在提交完之后如何重置清空本文框
我的一个例子,代码给大家看看html中的代码:<html><headlang="en"><metacharset="UTF-8"><title>表单提交无刷新</titl...
我的一个例子,代码给大家看看
html中的代码:
<html>
<head lang="en">
<meta charset="UTF-8">
<title>表单提交无刷新</title>
</head>
<body>
<iframe name="formsubmit11" style="display:none;">
</iframe>
<form action="form.php" method="POST" name="formphp" target="formsubmit11">
<ul>
<li>
<label for="uname">用户名:</label>
<input type="text" name="uname" id="uname" />
</li>
<li>
<label for="pwd">密 码:</label>
<input type="password" name="pwd" id="pwd" />
</li>
<li>
<input type="submit" value="登录" />
</li>
</ul>
</form>
</body>
</html>
PHP中的方法:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>表单提交无刷新</title>
</head>
<script >
function tts(){
document.getElementById("sname").value="";
document.getElementById("pwd'").value="";
}
</script>
<body>
<?php
//非空验证
if(empty($_POST['uname']) || empty($_POST['pwd']))
{
echo '<script type="text/javascript">alert("用户名或密码为空!");</script>';
exit;
}
//验证密码
if($_POST['uname'] != 'jack' || $_POST['pwd'] != '123456')
{
echo '<script type="text/javascript">alert("用户名或密码不正确!");</script>';
exit;
} else {
echo '<script type="text/javascript">alert("登录成功!");</script>';
exit;
}
?>
</body>
</html>
如何调用js中的方法进行清空? 我使用 echo '<script type="text/javascript">tts()</script>'; 结果没反应,求大神教 展开
html中的代码:
<html>
<head lang="en">
<meta charset="UTF-8">
<title>表单提交无刷新</title>
</head>
<body>
<iframe name="formsubmit11" style="display:none;">
</iframe>
<form action="form.php" method="POST" name="formphp" target="formsubmit11">
<ul>
<li>
<label for="uname">用户名:</label>
<input type="text" name="uname" id="uname" />
</li>
<li>
<label for="pwd">密 码:</label>
<input type="password" name="pwd" id="pwd" />
</li>
<li>
<input type="submit" value="登录" />
</li>
</ul>
</form>
</body>
</html>
PHP中的方法:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>表单提交无刷新</title>
</head>
<script >
function tts(){
document.getElementById("sname").value="";
document.getElementById("pwd'").value="";
}
</script>
<body>
<?php
//非空验证
if(empty($_POST['uname']) || empty($_POST['pwd']))
{
echo '<script type="text/javascript">alert("用户名或密码为空!");</script>';
exit;
}
//验证密码
if($_POST['uname'] != 'jack' || $_POST['pwd'] != '123456')
{
echo '<script type="text/javascript">alert("用户名或密码不正确!");</script>';
exit;
} else {
echo '<script type="text/javascript">alert("登录成功!");</script>';
exit;
}
?>
</body>
</html>
如何调用js中的方法进行清空? 我使用 echo '<script type="text/javascript">tts()</script>'; 结果没反应,求大神教 展开
1个回答
展开全部
你这段代码
<script >
function tts(){
document.getElementById("sname").value="";
document.getElementById("pwd'").value="";
}
</script>
是在php文件中的。php服务于服务器,js是操作客户端,两者不可直接相互调用。你的php文件根据用户提交的数据情况,返回相应的字符串:此处是一段javascript命令:
<script type="text/javascript">tts()</script>
客户端的ajax方法接收到服务器返回来的这段命令(字符串)之后,只会把它当作普通字符串处理,并不会把它作为新的DOM节点,(<script></script>这是一个节点)。
你的本意是返回命令:告诉客户端执行函数:tts(),但客户端并没有这个函数,所以你应该在客户端代码中添加tts()函数。既然是服务器上的php告诉客户端要执行函数tts()以清空文本框,那么这种告诉方式有无穷多种。也就是说,客户端根据服务器返回来的数据执行相应的命令,比如若服务器返回 "ABC",则执行命令:alert("ABC"),或干点别的什么事情。
实际上这是很简单就可以做得到的。楼主想得复杂化了。
一句话:
ajax根据服务器(php)返回的数据(命令或消息)执行相应的代码,只要你愿意。
补充:楼主为什么要把javascript函数tts放在php文件中呢?害怕客户知道这个函数的具体代码?
浏览器不知道函数的代码是什么怎么执行!!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询