既存の文字列配列を既存の html フォーム データに追加/プッシュしようとしています。このように手動で投稿するとうまくいきます:
$(function () {
$('#submitForm').submit(function (evt) {
//prevent the browsers default function
evt.preventDefault();
//grab the form and wrap it with jQuery
var $form = $(this);
//if client side validation fails, don't do anything
if (!$form.valid()) return;
$.ajax({
type: $form.prop('method'),
url: $form.prop('action'),
data: {
'ListRFID': GetSelectedItems(),
'Printer': 'e38911b2-1a2d-e311-be86-c8f7334c3af0',
'ExtraLine1': ''
},
dataType: "json",
traditional: true,
success: function (response) {
document.body.innerHTML = response;
}
});
});
});
以下のようにしてAJAXのデータを差し替えてみるとうまくいきません。ListRFID の代わりに未定義の変数を送信します。
var temp = { 'ListRFID': GetSelectedItems() };
var data = $form.serializeArray();
data.push(temp);
//AJAX data: data,
以下はほとんど機能しますが、投稿データを ListRFID ではなく ListRFID[]: として送信します。
data: $form.serialize() + '&' + $.param({ 'ListRFID': GetSelectedItems() }),
これを機能させるための適切なJavascriptメソッドを知っている人はいますか? とても有難い。