Вы должны переименовать атрибут 'значение' в свой HTML. Однако вы можете определить свои собственные атрибуты и прочитать их тоже (если проверка не вызывает беспокойства, а для HTML5 вы можете префикс своего пользовательского атрибута «data-»). Похоже:
<select id="test">
<option value="1" data-attrib="five">test 1</option>
<option value="2" data-attrib="four">test 2</option>
<option value="3" data-attrib="three">test 3</option>
<option value="4" data-attrib="two">test 4</option>
<option value="5" data-attrib="one">test 5</option>
</select>
Теперь для этого выбора вы можете получить значение параметров и значение «ATTRIB» что-то вроде:
function getOpts(){
var mySelect = document.getElementById('test')
, opts = mySelect.options
, results = ''
, i=0
, len = opts.length;
while (i<len){
results += opts[i].getAttribute('data-attrib')+'-'+
(opts[i].selected
? 'selected value: '+opts[i].value
: opts[i].value)+'\n';
i++;
}
return '\n'+results;
}
(Если вы также ищете текстовое значение параметра, вы может добавить opts[i].firstChild.nodeValue
к переменной результатов.)
В качестве сноски, если вы хотите определить свои собственные атрибуты, пожалуйста, прикрепите их к 'data-', чтобы сделать их HTML5 передовыми. – alex
, поэтому я могу определить свои собственные атрибуты? –