0

jquery ajax を使用して、次のようにフォームのコンテンツをサーバーに投稿しています。

$.ajax({
        type: type,
        dataType: "json",
        url: url,
        data: form.serialize(),
        success: onSuccess
});

チェックボックスから来たかのように、データの配列を送信する必要があります。

その場で非表示のチェックボックスを作成し、送信前にフォームに追加したくありません。私を助けることができるjquery apiのフォームに他の方法はありません。何か助けはありますか?

ありがとう、クリス。

4

1 に答える 1

0

この投稿は古く、私の場合とまったく同じではないかもしれませんが、非常によく似た問題が発生したときに検索で出てきたので、ここにあります. 私の場合、サーバーが予期していた特定のデータ形式があった $_POST['Category'] = Array([id]=>value)ため、ネストされたオブジェクトを使用してデータをフォーマットし、jQuery を使用して Ajax POST 経由で送信しました。この例では、DOM 要素からいくつかのカテゴリ ID をフェッチしています。これらは、データが保存されるときにキーとして使用され、値は関数によって導出されます。

var items = {};
var fn = 'Category';
var val = {};
items[fn] = val;
var item;
$("#div.data").each(function(){
    item = $(this).val();
    items.Category[item] = myval();
});
function myval() {
    // get data for the value part
    return data;
}
$.ajax({
    type: 'POST',
    cache: false,
    url: window.location.href,
    data: items,
    success: function(data){/* callback */}
});
于 2012-09-29T04:22:44.177 に答える