$.ajax({
url: 'Ajax/OrderBy.aspx',
data: {AppIds: sortedAppids},
dataType: 'xml',
type: 'POST',
success: function(xml)
{
alert("排序成功!");
}
});
ajax在同步互動時,第一次提交正常,再第二次提交如果和上次提交的url地址相同時將不進行提交,會用上次的傳回值。這樣處理也許是ext別有良苦用心,但是,如果遇到每次必須提交時,例如一次提交背景資料已經被修改了,再次提交返回的結果其實是不一樣的,這樣就需要特殊處理了。
方法一:GET方式加參數
原代碼:
view plaincopy to clipboardprint?
- var conn = Ext.lib.Ajax.getConnectionObject().conn;
- conn.open("get", HOST+'/OrgUserAction_checkPassword.action?id='+id+'&passwordOld='+checkValue,false);
- conn.send(null);
- // alert(conn.responseText);
處理後
view plaincopy to clipboardprint?
- var conn = Ext.lib.Ajax.getConnectionObject().conn;
- conn.open("get", HOST+'/OrgUserAction_checkPassword.action?id='+id+'&passwordOld='+checkValue+'&temp='+new Date(),false);
- conn.send(null);
- // alert(conn.responseText);
添加了一個臨時參數temp=new Date();
這樣保證了每次提交的url是不同的,從而達到了每次都會提交的效果。
方法二:
把get 改成post就可以了type: 'POST',
注意改成 post 方式之後 在後台要使用 Request.Form[""] 接收參數