2016-01-19 74 views
2

如何移除JQuery中TextBox的焦点?JQuery从文本框中移除焦点

编辑:这是我一直在寻找的解决方案:

$(this).trigger('blur'); 

,原因未知,$(this).blur();没有工作。我创建了一个新的,清晰的解决方案,然后运行。

+1

这是什么意思?如果在点击该区域时模糊了该区域,则永远不能编辑该区域。你可能只是使用'readonly'。 –

+0

这真的听起来像[XY问题](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem) –

+0

@RoryMcCrossan我简化了我的问题,省去了不相关的东西。自然,我不会清除文本框,然后删除焦点,但我想知道如何以编程方式删除焦点。 – Kohnarik

回答

4

JS Fiddle

$(function() { 
 
    $('input[type=text]').focus(function() { 
 
     $(this).val(''); 
 
     // add the below line to trigger the blur event 
 
     $(this).trigger('blur'); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> 
 
<input type="text" value="abcdef">

+0

谢谢,那正是我要找的。 – Kohnarik

+0

不客气@Kohnarik –

1

您可以强制其使用触发功能

$("...").trigger("blur"); 
1

使用模糊。 blur().

将事件处理程序绑定到“模糊”JavaScript事件,或在元素上触发该事件。

$(this).trigger('blur'); 
+0

是的,你应该使用$(this).trigger('blur'); – Tal

+0

这两者有什么区别? – Kohnarik