html文本框提示信息的onblur跟oncclik事件的问题

详细描述:我有个text文本框,当它获得焦点下面有个隐藏的DIV显示出来,DIV里有10行数据项,这时我要click点中某个数据项将其显示到文本框中,但是当点的时候文本框... 详细描述:我有个text文本框,当它获得焦点下面有个隐藏的DIV显示出来,DIV里有10行数据项,这时我要click点中某个数据项将其显示到文本框中,但是当点的时候文本框我已经设置有个blur失去焦点的事件,导致DIV隐藏, 从而点不到DIV,这个怎么解决?所以,我是想要文本框失去焦点时候div隐藏,但当鼠标有对div点击事件时应将选中的值先显示到文本框中再隐藏div。跪求大侠指点,O(∩_∩)O谢谢!!!采纳的还会加分!3Q!~ 展开
 我来答
冰火两重天
推荐于2016-06-14 · TA获得超过1425个赞
知道小有建树答主
回答量:1489
采纳率:0%
帮助的人:997万
展开全部

看看是不是要这个效果:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title> New Document </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<body>
 <input type="text" id="txt"><br>
 <div id="msg" style="display:none;border:1px dotted blue;width:300px;">
  <span>这里是第1行数据</span><br>
  <span>这里是第2行数据</span><br>
  <span>这里是第3行数据</span><br>
  <span>这里是第4行数据</span><br>
  <span>这里是第5行数据</span><br>
  <span>这里是第6行数据</span><br>
  <span>这里是第7行数据</span><br>
  <span>这里是第8行数据</span><br>
  <span>这里是第9行数据</span><br>
  <span>这里是第10行数据</span><br>
 </div>
 <script language="JavaScript">
 <!--
  var flag = false;
  var txt = document.getElementById("txt");
  var div = document.getElementById("msg");
  txt.onblur = function() {
   if (!flag)
   {
    div.style.display = "none"; 
   }
  }
  txt.onfocus = function() {
   div.style.display = "block";
   flag = true;
  }

  var spans = div.childNodes;
  for (var i=0;i<spans.length ; i++)
  {
   spans[i].onclick=function() {
    txt.value = this.innerText;
    div.style.display="none";
   }
  }
  
 //-->
 </script>
</body>
</html>
追问
你实现的思路是对的,但是失去焦点时候不能隐藏div,在你的基础上我稍加改动一点就行了,增加一个鼠标滑动到div的事件,让标志flag=true,就实现了。还是非常感谢你给了我思路!
追答
ok....
yugi111
2014-02-28 · TA获得超过8.1万个赞
知道大有可为答主
回答量:5.1万
采纳率:70%
帮助的人:1.3亿
展开全部
<!DOCTYPE html >

<html>
<head>
<meta charset=UTF-8>
<title>Document</title>
</head>
<body>
<input type="text" id="tete" onfocus="document.getElementById('div').style.display='block';" />
<div id="div" style="display: none;">
<input type="text" value="1" onclick="document.getElementById('tete').value=this.value;this.parentElement.style.display='none';" /><br/>
<input type="text" value="2" onclick="document.getElementById('tete').value=this.value;this.parentElement.style.display='none';" /><br/>
<input type="text" value="3" onclick="document.getElementById('tete').value=this.value;this.parentElement.style.display='none';" /><br/>
<input type="text" value="4" onclick="document.getElementById('tete').value=this.value;this.parentElement.style.display='none';" /><br/>
<input type="text" value="5" onclick="document.getElementById('tete').value=this.value;this.parentElement.style.display='none';" />
</div>
</body>
</html>
追问
sorry,你的这个没有失去焦点事件的功能,而且也不是我描述的呢
追答
自己写
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式