2010-04-08 63 views
1

我使用jQuery和AJAX從鏈接和表單加載內容到內容div。另外我使用地址插件啓用後退按鈕並刷新。在服務器端,我使用Java和Spring MVC。jQuery地址 - 表單提交後重定向

因爲我使用jQuery地址和AJAX,所以直接加載的唯一頁面是「index.html」。其他的東西都加載到內容div中,並且在散列中指定要加載的頁面,即。 「index.html#/ users/add.html」將加載「users/add.html」。

現在,「users/add.html」包含用於創建新用戶的表單。當表單被提交併且一切正常時,控制器重定向到「users/index.html」。問題是,jQuery地址不知道重定向,所以網址將保持「index.html#/ users/add.html」。當刷新頁面然後發送回表單而不是索引頁時,這是一個問題。

有沒有辦法解決這個問題?

感謝,
了Stian

+0

如果你做的表格後,重定向提交,什麼是做的形式,AJAX提交的地步? – 2010-04-09 08:39:26

回答

0

我意識到我的問題的描述是不是那個最好的,道歉。

我在另一個問題重新說明了問題,沒有答案,但我自己找到了解決方案。 :)

AJAX - Get response URL after redirect

0

首先我初始化我的形式,這樣的:

$('FORM').submit(function() { 
    shareData = $(this).serializeArray();  
    $.address.value($(this).attr('action')); 
    }) 

後,我有我的變化方法類似的東西:

$.address.change(function(event) { 

    if (event.path != '/' && event.parameters.layout_to_use != undefined) { 

     // if no json, load don't do a post request 
     shareData = _arrayToJson(shareData);; 

     $('#areatoreload') 
      .html('<span style="background-color:red;">loading...</span>') 
      .load('myscript.php', shareData, function() {}); 
    } 
    return false; 
}); 

而且管理我的以相同的方式鏈接。我希望它能幫助你。 shareData並不是一個很好的方法,但我暫時沒有找到其他的東西。這段代碼沒有經過測試,我只是提取自己代碼的一部分。