Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   "select" И data-attr (https://javascript.ru/forum/jquery/45080-select-i-data-attr.html)

feniks7 13.02.2014 17:49

"select" И data-attr
 
Здравствуйте. Столкнулся с такой проблемой. Есть у меня селект

<select id="sp_model">
     <option data-attr="/url/file.ext" value="somevalue">$NAME</option>
     <option data-attr="/url/file.ext" value="somevalue">$NAME</option>
     <option data-attr="/url/file.ext" value="somevalue">$NAME</option>
</select>


при событии change, мне нужно получить содержимое data-attr;
Пробовал так, не прокатило:

$('#sp_model').change(function()
	{
		console.log("changed!");
		console.log($('#sp_model').attr('data-attr'));
	});


говорит не определено.

рони 13.02.2014 18:11

у
Цитата:

Сообщение от feniks7
$('#sp_model').

нет никаких атрибутов

feniks7 13.02.2014 18:16

рони,
Всмысле нет?
value то как атрибут я могу получить. $('#sp_model').attr('value'); Вполне работает.

рони 13.02.2014 18:16

feniks7,
:cray:
<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script>
$(function () {
      $('#sp_model').change(function()
	{
		alert($(':selected', this).data('attr'));
	});
  })
</script>
</head>
<body>
<select id="sp_model">
     <option data-attr="/url/file.ext1" value="somevalue">$NAME</option>
     <option data-attr="/url/file.ext2" value="somevalue">$NAME</option>
     <option data-attr="/url/file.ext3" value="somevalue">$NAME</option>
</select>

</body>
</html>

feniks7 13.02.2014 18:24

рони,
Да, понял что имелось ввиду) не знал как обратиться к селектед..

Благодарю

danik.js 13.02.2014 21:40

Цитата:

Сообщение от feniks7
не знал как обратиться к селектед

Другой вариант, без запроса через селектор:
$(this.selectedOptions[0]).data('attr')

Правда работает только в новых браузерах (если не сочиняю).


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