我是javascript和jquery的新手,需要你的帮助。我试过搜索论坛,但我找不到解决方案
我正在尝试将某些内容发布到php文件中,然后重定向到我选择的页面。帖子正确发生但不是重定向。
html表单是
<form action="userinfo.php" method="post">
<p><input type="text" required maxlength=7 name="login" id="login" value="" placeholder="Username"></p>
<p><input type="password" required name="password" id="password" value="" placeholder="Password"></p>
<p class="remember_me">
<label>
<input type="checkbox" name="remember_me" id="remember_me">
Remember me on this computer
</label>
</p>
<p class="submit"><input type="button" id="searchForm" onclick="SubmitForm();redirect()" value="Login"></p>
</form>
,jquery代码是
<script>
function SubmitForm() {
var login = $("#login").val();
var password = $("#password").val();
$.post("userinfo.php", {login: login, password: password },
function(data) {
alert("Data Loaded: " + data);
});
}
function redirect(){
alert("Redirecting..");
window.location = "mainpage.html"
}
</script>
显然没有调用SO redirect()。对于为什么会发生这种情况的任何帮助都表示赞赏。请注意,我不是javascript或jquery专家。试着运气学习东西......: - )
p.s:我可以从php文件重定向但不喜欢这样做。
答案 0 :(得分:2)
只有在表单提交(登录)成功完成后才需要重定向
<input type="button" id="searchForm" onclick="SubmitForm()" value="Login">
然后
<script>
function SubmitForm() {
var login = $("#login").val();
var password = $("#password").val();
$.post("userinfo.php", {login: login, password: password },
function(data) {
alert("Data Loaded: " + data);
redirect();//redirect here
});
}
function redirect(){
alert("Redirecting..");
window.location = "mainpage.html"
}
</script>
答案 1 :(得分:1)
你必须在邮件请求成功后调用该函数
<script>
function SubmitForm() {
var login = $("#login").val();
var password = $("#password").val();
$.post("userinfo.php", {login: login, password: password },
function(data) {
alert("Data Loaded: " + data);
// calling the redirect
redirect();
});
}
function redirect(){
alert("Redirecting..");
window.location = "mainpage.html"
}
</script>
答案 2 :(得分:0)
首先,为什么你要使用表单操作和jquery post进行相同的操作。那不是一个好习惯。
使用jquery post数据来调用php,如果响应id成功,则重定向到下一页。
<script>
var login = $("#login").val();
var password = $("#password").val();
$.post("userinfo.php", {login: login, password: password },
function(data) {
if(data = "success"){
console.log("Redirecting..");
window.location = "mainpage.html"
}
});
}
</script>