Получить все атрибуты одного (или более) элемента с помощью jQuery - PullRequest
0 голосов
/ 04 марта 2010

У меня есть требование предоставить значения из 2 полей выбора в метод действия. Я хотел бы знать, есть ли способ автоматического извлечения всех атрибутов из выбранных опций из каждого поля выбора в объект данных, который я могу передать на сервер с моим $ .get?

В идеале я мог бы использовать такую ​​функцию:

http://plugins.jquery.com/node/6530

var data = $.getAttributes($('#lstFilter option:selected'))

это прекрасно работает для одного элемента, но не подходит для нескольких элементов, потому что возвращает объект json, к которому нельзя добавить.

Кто-нибудь может предложить обходной путь или другой подход, который я мог бы использовать, чтобы получить результат?

Спасибо

Dave

1 Ответ

1 голос
/ 04 марта 2010

Лучше всего сделать это с map():

var valuesArray = $("select").map(function() {
  return $(this).find(":selected").val();
});

Выше приведен массив значений. Вам может потребоваться определить источник каждого значения, и в этом случае вам понадобится что-то вроде:

var values = {};
$("#select").each(function() {
  values[$(this).attr("name")] = $(this).find(":selected").val();
});

, который создает анонимный объект со всеми значениями <select>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...