Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   LoadSelect: добавление новых option-элементов в select с доп.свойствами (https://javascript.ru/forum/jquery/38397-loadselect-dobavlenie-novykh-option-ehlementov-v-select-s-dop-svojjstvami.html)

Dr.Livsi 30.05.2013 16:07

LoadSelect: добавление новых option-элементов в select с доп.свойствами
 
Собственно, есть такая jquery-функция:
(function($) {
$.fn.loadSelect = function(optionsDataArray) {
return this.each(function(){
if (this.tagName=='SELECT') {
var selectElement = this;
$.each(optionsDataArray,function(index,optionData) {
var option = new Option(text=optionData[1],
value=optionData[0]
);
if ($.browser.msie) {
selectElement.add(option);
}
else {
selectElement.add(option,null);
}
});
}
});
}
})(jQuery);

Она прекрасно работает. Но есть одно "но" - она работает со стандартными свойствами объекта Option. А мне кроме стандартных свойств (text, value) необходимо добавить так же еще одно свойство - 'exp'.
Вариант:
var option = new Option(text=optionData[1],
value=optionData[0],
exp=optionData[2]
);
не проходит, выдает ошибку.
Пробовал так же добавить свойство уже после создания объекта:
var option = new Option(text=optionData[1],
value=optionData[0]
);
option['exp']=optionData[2];
так же не проходит.

Подскажите, пожалуйста, как можно решить задачу?

ANAGAMA 30.05.2013 17:18

Есть такая конструкция....

<div ... data-index="123" ... id="one">

$(#one).data('index') .... вернет "123"

Вместо слово index можно использовать все что угодно. Кстати, работает не только в DIV-е нои в других тегах.


Часовой пояс GMT +3, время: 14:07.