1

Ajax経由で複数選択全体($('#tags_selected'))を送信しようとしています

$.ajax({
  url: base_url + 'companies/editTagsAsync',
  type: 'post',
  dataType: 'json',
  data: $('#tags_selected').val(),
  success: function (json) {
    console.log(json);
  }
});

ただし、選択された値のみが送信されます。選択ボックスにすべての値を渡したい。これにはおそらく簡単な解決策がありますが、私はそれを知りません...

4

3 に答える 3

0

ドロップダウンの子孫を見つけて、<option>その値を取得する必要があります。

data: { 
  values: $('#tags_selected').find("option").map(function() {return this.value;})
}

このようにサーバー側では、すべての値を含む「values」という名前の配列を取得します。要素を含むドロップダウンを見越して、オプションを取得する.find()代わりに使用しました。.children()<optgroup>

于 2013-04-11T09:09:10.143 に答える
0
You need to send both selected and all values array.

var data: { 
        allValues: $('#tags_selected').find("option").map(function() {return this.value;}),
        selectedValues :$('#tags_selected').val()
    }
var data={ }
$.ajax({
  url: base_url + 'companies/editTagsAsync',
  type: 'post',
  dataType: 'json',
  data: data,
  success: function (json) {
    console.log(json);
  }
});
于 2013-04-11T09:24:25.647 に答える