假设我使用以下函数修改了一个属性值:
$('#dd ul.dropdown li a').click(function(e) {
var txt = $(e.target).html();
var langs = $(e.target).text();
$('#dd .currentlangs').html(txt);
langs = langs.trim().toLowerCase().replace(/\s+/g, "-");
$('.currentlangs').attr('data-lang', langs);
});
然后我想要一个keyup函数中的当前属性值,如:
var $input = $('#querysearch');
var dict = $('.currentlangs').attr('data-lang');
$input.on('keyup', function () {
alert(dict);
});
需要的值是“dict”变量但是这样做我在加载DOM时不断获得初始值。如何在触发keyup函数时获取当前属性?
非常感谢
答案 0 :(得分:1)
您在此行
时获取属性的值var dict = $('.currentlangs').attr('data-lang');
运行。这是之前使用点击任何东西,所以你自然会得到HTML中定义的值。将其移动到 keyup
处理程序:
var $input = $('#querysearch');
$input.on('keyup', function () {
var dict = $('.currentlangs').attr('data-lang');
alert(dict);
});
...以便在keyup
事件发生时获得值。