2012-02-13 38 views
1

使用jQuery,我知道$ .ajax()可以用来发布到一个url,但我不能使用$ .ajax()来解决我的问题。我希望客户端POST到一个URL并让服务器重定向到一个URL(PRG模式),因此,它不能使用XHR请求。一种简单的方式发布到URL并不使用ajax?

如何让客户端POST到URL 没有创建<form>?当然,有一个比这更容易的解决方案。 jQuery post request (not AJAX)

+0

没有创建“?” ??你可以使用js进行重定向,所以我不明白为什么你不能使用ajax ... – soju 2012-02-13 16:19:29

+1

也许有人比我更聪明会对付我,但根据我的经验,你需要一个表单或ajax。抱歉。 – 2012-02-13 16:21:42

+1

[jQuery非AJAX POST]的可能重复(http://stackoverflow.com/questions/5524045/jquery-non-ajax-post) – Brad 2012-02-13 16:22:14

回答

2

为什么你不能用Ajax POST,然后每当它返回时,在回调函数中做一个Javascript重定向?只需让服务器提供重定向到的URL即可。

0

最简单的方法是使用jQuery和click()事件。并使用数据将它们作为var在数据集中传递:{data1:datavals}

ill编写此代码后,代码被写入。

更新:

<input type="text" name="data1" id="data1" value="" placeholder="Input text for data 1"> 
<input type="text" name="data2" id="data2" value="" placeholder="Input text for data 2"> 
<input type="submit" name="submit" id="submit" value="submit"> 
$("#submit").click(function(){ 
    $.ajax({ 
     url: "process.php", 
     data: {data1: $("#data1").val(), data2: $("#data2").val()}, 
     dataType: "json", 
     type: "POST" 

    }); 
}); 
2

您可以创建和发送表单或使用AJAX。没有其他方式我知道。

但为什么不:首先使用ajax post保存数据,然后转到新页面。

$.post('youscript.php', function(data) { 
    window.location.href = data; 
}); 

否则请参阅此old question关于如何使用动态创建的表单发送它。

相关问题