之前總結了一篇關於ajax使用.a
jax傳
遞陣列的
部落格,但
是每次使
用 .aj
ax傳遞
陣列的博
客,但是
每次使用
.ajax都需要配置url、datatype、contenttype等,太過麻煩,於是想嘗試使用$.post方法進行傳值,最近正好在專案中需要使用,做一下筆記
一、簡單型別的list傳遞
function
createtask
() );
})ids.push();
var selected = $('#usertree').tree('getselected');
if (selected) );
ids.push();
}$.post("/inspection/createtask", ids, function
(data) , 'json')}}
後台**
public actionresult createtask(list ids,string taskname,int recieverid,string recievername)
主要思路是網陣列中新增鍵值對物件,name屬性的值需要與後台controller接收的資料字段同名
二、複雜型別物件list傳遞
根據需要,傳乙個list < exportpackagespara>物件,物件定義如下:
public
class exportpackagespara
public
string text
public
string entity
public
string filter
}
function
alertmessage
() ;
var i = 0;
checks.foreach(function
(currentvalue, index) else
});$.post("/exportpackages/exportpackages?plugin=lsrpm.management", pakages, function
(data) , 'json');
}
後台**
需要注意的是,如果採用formdata傳遞資料,則傳遞的資料樣式必須是paras[0].id(id為物件的屬性),不能是paras[0][id]這種,而且陣列序號必須從0開始且連續,中間不能跳號。
good luck!!!
窗體間傳遞複雜資料
這些辦法我感覺都不是特別好,會導致父窗體與子窗體耦合過於緊密,對任何乙個窗體的修改需要重新編譯另外乙個窗體。根據 依賴倒置 的原則,通過引入乙個結果物件,就可以避免這種緊耦合,同時也可以傳遞任意複雜的資料。如果需要在子窗體中改變父窗體狀態,也可以在這個結果物件中定義委託與事件來達到目的。我在這裡給出...
窗體間傳遞複雜資料
這些辦法我感覺都不是特別好,會導致父窗體與子窗體耦合過於緊密,對任何乙個窗體的修改需要重新編譯另外乙個窗體。根據 依賴倒置 的原則,通過引入乙個結果物件,就可以避免這種緊耦合,同時也可以傳遞任意複雜的資料。如果需要在子窗體中改變父窗體狀態,也可以在這個結果物件中定義委託與事件來達到目的。我在這裡給出...
使用qt dbus 傳遞複雜資料結構的方法
參考文章 如何用dbus glib傳遞複雜的資料結構 經過多次試驗 qdbusxml2cpp 對諸如 qlist,qstringlist 等高階資料結構支援並不好,無奈之舉,只有用 字元資料這個容器來處理,在qt中對應qbytearray xml檔案中這樣寫後,qdbusxml2cpp 自動用qby...