2016-08-26 3 views
1
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<select id="simpleSelect" multiple> 
<option type='string'>raj</option> 
<option type='number'>1</option> 
</select> 
<script> 
$(function(){ 
var cloneOptions = $('#simpleSelect option').clone(); 
console.log(cloneOptions.length); // 2 
console.log(cloneOptions[0]); //<option type="string">raj</option> 
console.log(cloneOptions[0].length); //undefined 
console.log(typeof cloneOptions[0]); //object 
}); 
</script> 

Как получить значение атрибута типа. Странно, даже если длина объекта не определена. Любая помощь заметна.Как получить атрибуты клонированного опциона?

ответ

1

cloneOptions имеет клонированный объект из 2 элементов. cloneOptions[0] возвращает объект dom первого элемента.

вам нужно использовать .eq() селектор, чтобы получить JQuery объект элемента по индексу:

cloneOptions.eq(0).attr('type'); 

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

<option data-type='string'>raj</option> 

, а затем использовать .data(), чтобы получить данные значения атрибута»

cloneOptions.eq(0).data('type'); 
+1

Я новичок в разработке пользовательского интерфейса Спасибо за внимание к данным - *, я пропустил это полностью. –

+0

@Sandeepsandy: рад, что это помогает :) –

2

Попробуйте

$(cloneOptions[0]).attr('type') 
+0

Спасибо! действительно полезно. –

Смежные вопросы