文本框失去焦点时的Jquery函数
我有文本框,当文本框失去焦点时我想运行一些jquery,所以在用户点击文本框之后。
我试过这样做
$("#textbox").focusout(function () { alert("hello"); });
但我得到一个错误,说Object不支持此属性或方法。
那怎么办呢?
focusout
在v1.4中添加。 三个想法:
- 你能使用早期版本的jQuery吗?
- 你的领域真的有id
textbox
吗? - 您是否也使用Prototype或MooTools(或其他任何可能接管
$
)? 如果是这样,使用jQuery的noConflict
模式并使用jQuery
而不是$
。
除此之外,它应该(确实)有效。
这是一个例子(像你一样使用警报): http : //jsfiddle.net/QzmZp/1/
而另一个没有使用警报(因为那吓坏了IE7): http : //jsfiddle.net/QzmZp/2/
之前有人询问过浏览器版本,我已经尝试过使用Chrome 5,IE6,IE7和FF3.6; 一切都很好。
我做了input
和textarea
因为我不确定你使用的是什么。
jQuery("#textbox").blur(function() { alert("hello"); });
blur
是元素失去焦点时触发的事件。 看看jQuery.blur
。
编辑
不确定这是否是您想要的,但如果您真的想使用focusout
请查看TJ Crowder的解决方案 。 但是,对于您的情况,可能需要blur
事件,因为您想要检测文本框本身的失去焦点。 当元素或该元素内的任何元素失去焦点时, focusout
触发。
$("#idOfTextField").blur(function(){ //your code });
$(document).ready(function () { ////////////////////////ALL textbox to upper $("input[type=text]").blur(function () { $(this).val($(this).val().toUpperCase()); }); });
在失去焦点时将所有文本框转换为上部。