0
這是我目前的情況和問題。我有2個下拉列表,當我改變選擇的第一個,第二個填充數據取決於我選擇的(因爲它使用ajax當然)。 當我向@Controller
提交數據時,它會將我返回到同一頁面,並且當我嘗試再次執行相同操作時(選擇第一個下拉列表中的選擇選項以獲取第二個有效信息),無論我選擇什麼,我都會從中獲取信息先前的請求(在我返回到該頁面之前的舊請求)。那就是:控制器獲取錯誤信息(前一頁中的舊信息),因爲它使用舊的請求信息填充第二個下拉列表。Liferay @ResourceURL在ajax調用上緩存參數
就像我的ajax調用有一些緩存打開並使用舊的信息。這是怎麼看起來像我的代碼
<portlet:resourceURL var="getURL" id="dataurl" escapeXml="false"></portlet:resourceURL>
腳本:
<script>
var type = $("#pi_selectType option:selected").val();
$.ajax({
method : "POST",
url : "${getURL}",
data : {
info1: "${PO.data1}",
info2 : type
},
dataType : "json",
success : function(data) {
....
});
<script>
我試圖在Ajax調用添加參數:
cache: false
,但問題仍然存在。
是否有辦法後ResourceMapping
請求,或類似的東西來重置Portlet的URL,因爲我認爲這可能解決這個問題。歡迎任何建議。
您使用6.0或6.1的哪個版本的liferay? CE還是EE?另外你可能想看看Liferay的問題[LPS-3022](http://issues.liferay.com/browse/LPS-3022),根據這個問題,發生的事情是,不是創建一個新的'resourceURL'新參數,它將新的參數添加到舊的'resourceURL'中,由此它提供相同的數據。要知道是否屬於這種情況,請在Firefox中安裝Firebug,並檢查AJAX請求和Firebug控制檯中生成的URL。 –