免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1453 | 回复: 0
打印 上一主题 下一主题

JQuery搜索select里面的值 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-21 08:44 |只看该作者 |倒序浏览
  1. <div class="search">
  2. <input type="text" id="Jmytext" value=""/>
  3. </div>
  4.  <select id="fb_list" multiple="multiple" class="search_locate" name="baseos">
  5.  <option value="aaaabbbbbb">aaaabbbbbb</option>
  6. <option value="ccccccccccddddddd">ccccccccccddddddd</option>
  7.  <option value="eeeeeeeeeefffffffffff">eeeeeeeeeefffffffffff</option>
  8.  <option value="pam-devel-0.99.6.2-6.el5.x86_04">pam-devel-0.99.6.2-6.el5.x86_04</option>
  9.   <option value="pam-devel-0.99.6.2-6.el5.x86_05">pam-devel-0.99.6.2-6.el5.x86_05</option>
  10.  <option value="pam-devel-0.99.6.2-6.el5.x86_06">pam-devel-0.99.6.2-6.el5.x86_06</option>
  11.  </select>
实现的原理
1. 定义全局数组存放最初的数据
2. 触发onchange事件如果有发生就调用

<script language="JavaScript"> 
String.prototype.Trim = function() { 
   return this.replace(/(^\s*)|(\s*$)/g, ""); 
}
//声明两个全局的变量分别存放左与右侧的数据
var leftSelectData = [];

$(document).ready(function () {
if(navigator.userAgent.indexOf("MSIE")>0){ 
document.getElementById('Jmytext').attachEvent("onpropertychange",txChange); 
document.getElementById('Jothertext').attachEvent("onpropertychange",txChange2); 
}else{
document.getElementById('Jmytext').addEventListener("input",txChange,false);
document.getElementById('Jothertext').addEventListener("input",txChange2,false);
}
//将原来的数据先保存到一个数组里面
$("select[@name=baseos] option").each(function(){ 
leftSelectData.push($(this).val());
}); 
});
  
function txChange(){ 
var content = $("#Jmytext").val().Trim();
//先清空掉原来的数据
$("#fb_list").empty();  
//判断如果关键字为空的话就提取全部
if(content==''){
$.each(leftSelectData,function(n,value) {
$("#fb_list").append('<option value="'+value+'">'+value+'</option>');
  });
} else {
//如果不为空就通过关键字重新搜索
var reg = new RegExp(content,'i');
$.each(leftSelectData,function(n,value) {
if(reg.test(value)){
$("#fb_list").append('<option value="'+value+'">'+value+'</option>');
}
  });
}
function txChange2(){ 
alert("testfirefox"); 

</script> 
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP