2012-02-13 74 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關於如何使用動態創建的表單發送它。

相關問題