これを行う方法を探していて、ここに投稿されたいくつかの質問を見てきましたが、必要な配列のすべての要素を取得できません。送信する配列は次のとおりです。
function myFunction(e) {
var containerChildren = $("#active").children();
for (i = 0; i < containerChildren.length; i++) {
var announcementarray = new Array();
announcementarray[i] = $('#' + containerChildren[i].id).data("id");
alert(announcementarray[i]);
}
$.ajax({
data:
{
activeid: announcementarray
},
datatype: 'json',
url: '/HumanResources/Announcement/AnnouncementActive',
cache: false,
type: 'POST',
traditional: true,
error: function (result) {
alert(result);
},
success: function (result) {
//alert(result);
}
});
}
ただし、コントローラーがこのデータを受信するたびに、実際の値を持つ最後の子のみが表示され、他のすべてはundefined
. これが私のコントローラーの宣言です
public ActionResult AnnouncementActive(string[] activeid, string[] inactiveid)
{
}
どんな助けでも大歓迎です!traditional: true
(私は、、などを試しました.serialize()
)