我有文本框,当文本框失去焦点时我想运行一些jquery,所以在用户点击文本框之后。
我试过这样做
$("#textbox").focusout(function () {
alert("hello");
});
但是我收到错误,说Object不支持此属性或方法。
我怎么能这样做?
答案 0 :(得分:18)
focusout
。三个想法:
textbox
?$
的人)?如果是这样,请使用jQuery的noConflict
模式并使用jQuery
代替$
。除此之外,它应该(确实)有效。
以下是一个示例(使用警报):http://jsfiddle.net/QzmZp/1/
另一个没有使用警报(因为IE7吓坏了):http://jsfiddle.net/QzmZp/2/
之前有人问过浏览器版本,我已经尝试过使用Chrome 5,IE6,IE7和FF3.6;一切都很好。
我同时选择了input
和textarea
,因为我不确定您使用的是哪个。
答案 1 :(得分:12)
jQuery("#textbox").blur(function() {
alert("hello");
});
blur
是元素失去焦点时触发的事件。查看jQuery.blur
。
修改强>
不确定这是否是您想要的,但如果您真的想使用focusout
,请查看T. J. Crowder's solution。但是,对于您的情况,可能需要blur
事件,因为您想要检测文本框本身的失去焦点。当元素或内元素失去焦点时,focusout
会触发。
答案 2 :(得分:5)
$("#idOfTextField").blur(function(){
//your code
});
答案 3 :(得分:3)
$(document).ready(function () {
////////////////////////ALL textbox to upper
$("input[type=text]").blur(function () {
$(this).val($(this).val().toUpperCase());
});
});
要在失去焦点时将所有文本框转换为上部。