我有文本输入元素,并且在blur事件和用户按下Enter键时触发事件。如何通过jQuery获取文本元素的curent值
我的问题是,如果用户输入“foo”并按下输入val()
函数仍然返回null,在模糊事件val()
返回foo后。据我了解,这是由于HTML输入元素的值属性仅在失去焦点时才更新。你能否给我一个解决办法。
这里是确切的代码我使用:
var meetmove_address_field_listener = function(e){
var type = $(this).attr('data-marker-type');;
var value = $(this).val();
meetmove_map.geocodeAddress(type, value);
};
$(document).ready(function(){
$('input[data-type="name"]').blur(meetmove_address_field_listener);
$('input[data-type="name"]').keypress(function(event){
if (event.which == 13){
event.preventDefault();
meetmove_address_field_listener(event);
return false;
}
});
});
任何理由,你为什么不使用'。数据(“markerType”)'访问数据属性? – ThiefMaster 2012-04-05 07:50:26
嗯,我只是没有意识到它:) – 2012-04-05 08:01:57
你可能还想考虑使用类选择器来选择你的输入字段 - 它可能比使用属性选择器更快。至少在现代浏览器中有'getElementsByClassName()'等 – ThiefMaster 2012-04-05 08:03:26