1

次のようなコードがあります。

$('input:checkbox:checked').each(function (index) {

            indexArray.push($(this).attr("data-invoiceid"));
        });

            var postData = { values: indexArray.join(',') };

ご覧のとおり、チェックボックスのすべての請求書 ID を取得しようとしており、それらを投稿データの値属性にカンマ区切りの文字列として追加しています。値は「1、2、5」に設定される可能性があります。

したがって、これは機能します。最初に配列に値を追加するステップを削除できる、これを行うためのより良い方法があるかどうか疑問に思っていますか?

4

2 に答える 2

2

マップを使用することもできます。依然として配列を使用していますが、よりクリーンで、関数アプローチに従います。

var indexArray = $('input:checkbox:checked').map(function () {
  return $(this).attr("data-invoiceid");
}).get().join(',');
var postData = { values: indexArray};
于 2012-04-28T07:45:53.813 に答える
0

これを試して:

   indexArray = "";
    $('input:checkbox:checked').each(function() {
          indexArray += $(this).data("invoiceid") + ",";
    });
于 2012-04-28T07:41:34.537 に答える