У меня есть небольшое выпадающее меню, аналогичное <select>
, которое контролируется внешней js-функцией.
HTML:
<ul class="select" id="select">
<li>
<a href="javascript:void(0);" class="selectlink" id="price_type">UAH</a>
<ul>
<li onclick="onchange('elm0', 0);" >
<a href="javascript:void(0);" id="elm0">UAH</a></li>
<li onclick="onchange('elm1', 1);" >
<a href="javascript:void(0);" id="elm1">USD</a></li>
<li onclick="onchange('elm2', 2);" >
<a href="javascript:void(0);" id="elm2">EUR</a></li>
<li onclick="onchange('elm3', 3);" style="border-bottom:1px solid #54616E">
<a href="javascript:void(0);" id="elm3">...</a></li>
</ul>
</li>
</ul>
и onchange
-функция с использованием jQuery:
function onchange(id, index) {
$("#price_type").html($("#"+id).html());
updateData(index);
}
где updateData(index)
выполняет AHAH-запрос на изменение содержимого в соответствии с аргументом index
. Но я хочу изменить этот старый источник, используя jQuery и, следовательно, без onclick="onchange('elm...', ...);"
. И поскольку я начал изучать jQuery 2 дня назад, мне нужна помощь по поводу того, как это правильно:
$(function() {
$("ul#select li ul li").click(function() {
var id = $("[id^=elm]").attr("id").match(/\((\d+)\)/)[1];
$("#price_type").html($("#elm"+id).html());
updateData(id);
});
});
и я что-то не так делаю ... Спасибо за ваши ответы!