атрибуты data
Доброго времени суток.
На странице есть элемент select с 3мя option. У каждого option усть по 2 атрибута data. Не получается передать значения data в js. Вот код Код JavaScript
var plat_pb;
var plat_otb;
function updatePlat()
{
$('[name=oplata] option').each(function() {
if($(this).text() == $('[name=oplata]').val())
{
plat_pb = parseFloat($(this).attr("data-pb"));
plat_otb = parseInt($(this).attr("data-otb"));
}
});
}
Код HTML <td><select name="oplata"> <option data-pb="1.01" data-opt="0"> 1</option> <option data-pb="1" data-otp ="0.75">2</option> <option data-pb="1" data-otp ="0">3</option> </select></td> Судя по всему проблема в том , что не попадает в if, но я никак не могу понять в чем причина. |
Ну и огород. Во-первых, не нужно так искать выбранный опшн.
Во-вторых метод $(this).data() сам возьмет значение из data-атрибута:
var option = $('[name=oplata]').prop('selectedOption');
// или может $('[name=oplata] option:checked');
plat_pb = $(option).data("pb");
plat_otb = $(option).data("otb");
|
Valentinka_1,
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
</head>
<body>
<table>
<td><select name="oplata">
<option data-pb="1.01" data-opt="0"> 1</option>
<option data-pb="1" data-opt="0.75">2</option>
<option data-pb="1" data-opt="0">3</option>
</select></td>
</table>
<input type="button" value="go">
<script>
var plat_pb;
var plat_opt;
$('input').click(updatePlat)
function updatePlat()
{
var selected = $('[name=oplata] option:selected');
plat_pb = selected.data('pb');
plat_opt = selected.data('opt');
alert([plat_pb,plat_opt])
}
</script>
</body>
</html>
|
Цитата:
|
| Часовой пояс GMT +3, время: 07:45. |