[jquery] Как получить данные атрибута data-city выбранного ID
Код:
<div class="city-menu">
<div class="city-item selected" id="kiev" data-city="Киев">Киев</div>
<div class="city-item" id="moscow" data-city="Москва">Москва</div>
</div>
<div class="city-item selected" id="kiev" data-city="Киев">Киев</div>
<div class="city-item" id="moscow" data-city="Москва">Москва</div>
</div>
Вывод данных осуществляется в класс = city
Код:
var cookieName = 'UserCity';
var cookieOptions = {expires: 7, path: '/'};
$(".city").html( $.cookie(cookieName) );
$("#" + $.cookie(cookieName)).addClass("selected");
$(".city-menu .city-item").click(function(e){
e.preventDefault();
$("#" + $.cookie(cookieName)).removeClass("selected");
$.cookie(cookieName, $(this).attr("id"), cookieOptions);
$(".city-menu .city-item").removeClass("selected");
$("#" + $.cookie(cookieName)).addClass("selected");
});
var cookieOptions = {expires: 7, path: '/'};
$(".city").html( $.cookie(cookieName) );
$("#" + $.cookie(cookieName)).addClass("selected");
$(".city-menu .city-item").click(function(e){
e.preventDefault();
$("#" + $.cookie(cookieName)).removeClass("selected");
$.cookie(cookieName, $(this).attr("id"), cookieOptions);
$(".city-menu .city-item").removeClass("selected");
$("#" + $.cookie(cookieName)).addClass("selected");
});
Ну соответственно будет не $(this).attr("id"), а вовсе $(this).attr("data-city")
Нужно только вывести .attr("data-city") в класс city
[ ! ] Подскажите как задать значение куки по умолчанию, когда еще пользователь не выбрал пункт из списка???
это
Код:
$(".city").html( $.cookie(cookieName) );
Код:
$(".city").html( $("#" + $.cookie(cookieName)).attr("data-city") );
Скрипт немного подправил под новые условия.
Есть страница с такой структурой:
<body>
<select><option><optionN></select>
<select><option><optionN></select>
<select><option><optionN></select>
</body>
Как из третьего селекта вытащить значение, которое в текущий момент выбрано? Все селекты имеют name. Хочется написать универсальный вариант, чтобы выбирать селект именно с определённым name и бралось его значение, независимо от того, сколько селектов на странице.
Код:
$('[name="select_name"] option:selected').text()