我有一个脚本通过mysql db检查验证,我使用jquery发布并回调结果,如果验证成功将重定向到另一个url,否则会弹出提醒警报。
function chkValid(){
$.post('check_validate.php', $("#form").serialize(), function(data) {
// if invalid, pop up alert
alert(data);
// if valid, redirect
window.location("url");
});
可以通过上面的脚本完成吗?
感谢。 }
答案 0 :(得分:0)
你必须得到“check_validate.php”返回给你在服务器端处理的内容。
你的“check_validate.php”必须回显一条消息......例如
<?php
//check_validate.php
if($_POST["req"]=="iamnew"){
echo "welcome";
}
else{
echo "unwelcome";
}
?>
让Jquery处理check_validate.php
的echo字符串$.post('check_validate.php',{ req: "iamnew" }, $("#form").serialize(), function(data) {
if(data=="unwelcome"){
alert(data);
}
else if(data=="welcome"){
window.location("url");
}
});
答案 1 :(得分:0)
function chkValid(){
$.post('check_validate.php', $("#form").serialize(), function(data) {
if(data!='valid') {
// if invalid, pop up alert
alert(data);
}
else {
// if valid, redirect
window.location.href("http://www.example.url");
}
});
}
确保必须回显单个字符串以指示数据在php代码中是有效还是无效。
echo 'valid';
或
echo 'invalid';
在check_validate.php中
答案 2 :(得分:0)
您可以发送一个标志作为对ajax请求的响应..如果成功操作则发送“1”,如果操作无效则发送“0”
function chkValid(){
$.post('check_validate.php', $("#form").serialize(), function(data) {
if(datat=="0") // if invalid, pop up alert
{ alert(data);
}
else
{
// if valid, redirect
window.location("url");
}
});