我有一个表单,提交后转到页面“http://qwertyasdfgh.rozblog.com/New_Post”(动作值)
我不想更改操作,但我想在提交后重定向到另一个页面。
我在提交后尝试重定向到“http://qwerty.rozblog.com/page/success”,但它不起作用。
这是我试过的代码:
(HTML)
<form method="post" action="http://qwertyasdfgh.rozblog.com/New_Post" id="f1">
<input type="text" name="title" style="width:300px"><br />
<input type="text" name="pimg" style="width:300px" maxlength="3072"><br />
<textarea dir="rtl" id="post" name="post" style="width:300px;" aria-hidden="true"></textarea><br />
<input type="submit" name="postsubmit" value=" submit " style="background:#333;" onclick="location()">
</form>
(JS)
function location() {
window.location.replace("http://qwerty.rozblog.com/page/success");
}
答案 0 :(得分:1)
您可以使用jquery和AJAX(或我误解了您)提交表单:
$('#f1').submit(function(e)
{
e.preventDefault();
$.post('http://qwertyasdfgh.rozblog.com/New_Post',
formDataAsJSON, //use eg. jquery form plugin
function(data)
{
window.location = 'somewhere';
}
);
});
答案 1 :(得分:1)
你有两个选择。
1)使用AJAX提交该表单,并在收到服务器重定向浏览器的响应后到您想要的页面。您可以使用例如jQuery和Ajax表单插件。代码如下所示:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script>
<script src="http://malsup.github.com/jquery.form.js"></script>
<script>
// wait for the DOM to be loaded
$(document).ready(function() {
// bind 'f1' form and provide a simple callback function
$('#f1').ajaxForm(function() {
window.location = "/page/success"
});
});
</script>
OR
2)你可以保留你的表格和js,并使用例如php来做一些事情后重定向用户。
New_post.php
<?php
// some stuff without printing (you cant change headers if you print something)
Header("Location: /page/success");
答案 2 :(得分:0)
如果可能,您可以使用head
中的meta refreshing将/ New_Post配置为重定向到/ page / success:
<meta http-equiv="refresh" content="0; url=http://qwerty.rozblog.com/page/success">