如何通过jQuery获取文本元素的当前值
How do I get curent value of text element via jQuery
我有一个文本输入元素,当用户按下回车键时,模糊事件会触发一个事件。
我的问题是,如果用户输入"foo"并按下回车val()
,那么在模糊事件val()
返回foo之后,函数仍然返回null。据我所知,这是由于HTML输入元素的value属性只有在它失去焦点时才会更新。你能帮我转一转吗。
这是我使用的确切代码:
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;
}
});
});
值可以直接访问,只需要使用正确的处理程序即可。.keypress()
将在字符显示在输入中之前触发。尝试.keyup()
而不是.keypress()
,它应该可以工作。
实际上,Sudahir的回答解决了我的问题——我滥用了$(这个)引用,它会根据上下文改变含义。但是他删除了他的答案,所以这里是工作代码:
$(document).ready(function(){
$('input[data-type="name"]').blur(meetmove_address_field_listener);
$('input[data-type="name"]').keyup(function(event){
if (event.which == 13){
event.preventDefault();
var type = $(this).attr('data-marker-type');
var value = $(this).val();
meetmove_map.geocodeAddress(type, value);
return false;
}
});
});
相关文章:
- 如何通过jQuery发送选定的元素和文本输入
- 树形结构,显示结构中单击的元素的文本
- 使用jquery切换元素的文本
- 延长符-在ng重复中获取子元素的文本
- Extjs 树 如何更改子元素的文本颜色
- 使用 jQuery 从选择标签中抓取文本
- 对具有相同 id 的多个元素进行文本验证
- 更改包含其他元素的元素的文本
- contenteditable=true元素的文本建议
- 如何使用jquery获取数字元素的文本并放入数组中
- 如何在悬停或被激活时更改元素的文本
- 使用javascript绘制多个以数组元素为文本中心的圆
- 获取没有子文本的元素的文本
- 使用 casperjs 抓取文本节点的最快方法
- Jquery 当元素有文本时尝试附加到选项选项卡
- 在 JavaScript / jQuery 回调中使用“this”更改单击元素的文本
- 如何分析 XML 文件和抓取文本值
- 从 XML 元素获取文本
- jQuery迭代类元素,抓取文本,插入别处
- 如何以安全可靠的方式抓取HTML元素的文本