jquery如何获取文本框是否有焦点,焦点移出时触发事件
我基于jquery做的文本框输入关键字提示信息功能,目前功能已经实现,可是有个问题不太完美。问题:提示框出现后,这时焦点在文本框中,我不选择提示项目的时候,我点击其它地方...
我基于 jquery 做的 文本框输入关键字提示信息功能,目前功能已经实现,可是有个问题不太完美。
问题:
提示框出现后,这时焦点在文本框中,我不选择提示项目的时候,我点击其它地方(也就是移开焦点),提示框应该随之关闭,我想做这样的功能,请大家帮忙看看。我目前的代码如下:
<script>
$(function(){
$('#search_auto').css({'width':$('#search input[name="k"]').width()+4});
$('#search input[name="k"]').keyup(function(){
$.post('search_auto.php',{'value':$(this).val()},function(data){
if(data=='0'){
$('#search_auto').html('').css('display','none');
}else{
$('#search_auto').html(data).css('display','block');
}
});
});
});
function bbb(bb){ document.getElementById('k').value=document.getElementById(bb).innerHTML;document.getElementById('search_auto').style.display="none";}
</script>
<div id="search">
<input type="text" name="k" id="k" class="k" /> <input type="button" name="s" value="搜索" />
</div>
<div id="search_auto"></div>
问题补充:
我现在就是想输入完内容后,点击页面其它地方,提示框就自动关闭。 展开
问题:
提示框出现后,这时焦点在文本框中,我不选择提示项目的时候,我点击其它地方(也就是移开焦点),提示框应该随之关闭,我想做这样的功能,请大家帮忙看看。我目前的代码如下:
<script>
$(function(){
$('#search_auto').css({'width':$('#search input[name="k"]').width()+4});
$('#search input[name="k"]').keyup(function(){
$.post('search_auto.php',{'value':$(this).val()},function(data){
if(data=='0'){
$('#search_auto').html('').css('display','none');
}else{
$('#search_auto').html(data).css('display','block');
}
});
});
});
function bbb(bb){ document.getElementById('k').value=document.getElementById(bb).innerHTML;document.getElementById('search_auto').style.display="none";}
</script>
<div id="search">
<input type="text" name="k" id="k" class="k" /> <input type="button" name="s" value="搜索" />
</div>
<div id="search_auto"></div>
问题补充:
我现在就是想输入完内容后,点击页面其它地方,提示框就自动关闭。 展开
4个回答
展开全部
$(function(){
$('#search_auto').css({'width':$('#search input[name="k"]').width()+4});
$('#search input[name="k"]').keyup(function(){
$.post('search_auto.php',{'value':$(this).val()},function(data){
if(data=='0'){
$('#search_auto').html('').css('display','none');
}else{
$('#search_auto').html(data).css('display','block');
}
});
}).focusout(function(){
$('#search_auto').html('').css('display','none');
});
});
试试,建议用jquery的插件 jquery-autocomplete
$('#search_auto').css({'width':$('#search input[name="k"]').width()+4});
$('#search input[name="k"]').keyup(function(){
$.post('search_auto.php',{'value':$(this).val()},function(data){
if(data=='0'){
$('#search_auto').html('').css('display','none');
}else{
$('#search_auto').html(data).css('display','block');
}
});
}).focusout(function(){
$('#search_auto').html('').css('display','none');
});
});
试试,建议用jquery的插件 jquery-autocomplete
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$("#焦点文本框的id").blur(function(){
这里是你要执行的程序
}
这里是你要执行的程序
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$(document).ready(
//失去焦点隐藏提示框
$("#焦点文本框的id").blur(function(){
$("#提示框id").hide();
}
))
//失去焦点隐藏提示框
$("#焦点文本框的id").blur(function(){
$("#提示框id").hide();
}
))
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$('#search input').blur(function(){
$('#search_auto).hide();
});
$('#search_auto).hide();
});
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询