遍历ul中所有li标签的里面的内容,如果有和文本框中的内容一致的li的话,清空文本框中的内容,如果没有,什么也不做。 遍历ul中所有li标签的里面的内容,如果有和文本框中的内容一致的li的话,清空文本框中的内容,如果没有,什么也不做。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 文本框与ul 和li的关联如何呢?结构又是如何呢?你这么问。给出来的你也不合用 <ul class="ul"><li>123</li><li>234</li><li>456</li><li>789</li><ul><input class="inp" value=""/>当input失去焦点时触发上面的判断 1:我为了测试,给你的ul加了个ID,input绑定了onblur事件<ul id="ultest" class="ul"><li>123</li><li>234</li><li>456</li><li>789</li><ul><input class="inp" onblur="inputBlur(this)" value=""/>2:处理失去焦点时的检测function inputBlur(o){ var v=o.value; var _li=document.getElementById("ultest").getElementsByTagName("li"); for(i=0;i<_li.length;i++) { if(_li[i].innerHTML==v){o.value='';break} }} 按照你说的想法,就是将ul li所有的值要和文本框的值一样吗?为什么要这样写了?直接根据文本框中的内容修改ul li 的所有的值不就可以了嘛 将下面代码保存值html格式,直接运行看看是不是你想要的结果:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=gbk" /> <script src="http://code.jquery.com/jquery-1.8.0.min.js" type="text/javascript"></script> <script type="text/javascript"> $(function(){ $(function(){ $('#txt_val').blur(function(){ var txt_val=$.trim($('#txt_val').val()); var i=0; $.each($('#ultest > li'),function(){ i++; var li_val=$.trim($(this).text()); if(txt_val!=li_val){ $('#txt_val').val(''); $('#dd').text('文本库中的值为:'+txt_val+',li的值为:'+li_val+'。因为两个值不相等,程序已停止运行。共循环'+i+'次。'); return false; } }) }) }) }) </script> </head> <body> <div id="dd" style="height: 50px; line-height: 50px; text-align: center; font-size: 14px; font-weight: bold;"></div> <ul id="ultest" class="ul"> <li>123</li> <li>123</li> <li>456</li> <li>789</li> <ul> 请在这里输入值:<input type="text" id="txt_val"/> </body></html> 如果有和文本框中的内容一致的li的话,清空文本框中的内容就是说有两个相同的Li的内容吧。是这个意思吧。那循环一下就OK了。 用我那个小小的修改下就好了呀function inputBlur(o){ var v=o.value; var _li=document.getElementById("ultest").getElementsByTagName("li"); var _count=0; for(i=0;i<_li.length;i++) { if(_li[i].innerHTML==v){_count=1;break} } if(_count==0){o.value='';}} JS实现弹出层全屏特效,类似F11 js实现拖动div但效果很卡 instanceof 是如何工作的? 求解:获得这个网站的链接直接的url getElementById在IE中正常在Firefox不起作用 想请教一个简单的在图片获取鼠标坐标的问题 <button>标签中 当鼠标按住它不放时 javascript有什么办法强迫它松开鼠标? 登陆程序代码求助,还有兼容问题。 大家轻松一下,来试用一下这个壁纸 咋样用JS函数处理服务器返回数据 望指教一下jquery的each问题 JQuery指定位置添加<td> 但是没有添加到想到的位置后面
<li>123</li>
<li>234</li>
<li>456</li>
<li>789</li>
<ul>
<input class="inp" value=""/>
当input失去焦点时触发上面的判断
<ul id="ultest" class="ul">
<li>123</li>
<li>234</li>
<li>456</li>
<li>789</li>
<ul>
<input class="inp" onblur="inputBlur(this)" value=""/>2:处理失去焦点时的检测
function inputBlur(o){
var v=o.value;
var _li=document.getElementById("ultest").getElementsByTagName("li");
for(i=0;i<_li.length;i++)
{
if(_li[i].innerHTML==v){o.value='';break}
}
}
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<script src="http://code.jquery.com/jquery-1.8.0.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$(function(){
$('#txt_val').blur(function(){
var txt_val=$.trim($('#txt_val').val());
var i=0;
$.each($('#ultest > li'),function(){
i++;
var li_val=$.trim($(this).text());
if(txt_val!=li_val){
$('#txt_val').val('');
$('#dd').text('文本库中的值为:'+txt_val+',li的值为:'+li_val+'。因为两个值不相等,程序已停止运行。共循环'+i+'次。');
return false;
}
})
})
})
})
</script>
</head>
<body>
<div id="dd" style="height: 50px; line-height: 50px; text-align: center; font-size: 14px; font-weight: bold;"></div>
<ul id="ultest" class="ul">
<li>123</li>
<li>123</li>
<li>456</li>
<li>789</li>
<ul>
请在这里输入值:<input type="text" id="txt_val"/>
</body>
</html>
就是说有两个相同的Li的内容吧。是这个意思吧。
那循环一下就OK了。
用我那个小小的修改下就好了呀function inputBlur(o){
var v=o.value;
var _li=document.getElementById("ultest").getElementsByTagName("li");
var _count=0;
for(i=0;i<_li.length;i++)
{
if(_li[i].innerHTML==v){_count=1;break}
}
if(_count==0){o.value='';}
}