`
xlcai
  • 浏览: 19743 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jquery实现仿select列表的即时搜索及拼音搜索

 
阅读更多

这里提到select,其实不是select,而是用<li><input>标签去仿造一个select,以实现对已有“option”的快速检索功能。

以<input>标签代替select的选择框,以<li>标签代替option标签。每个li标签附onclick触发js带参数的选取事件,所带参数即为option的value.<li>内附带显示text用的input标签,和隐藏的text的拼音input标签。思路就是这些。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>qqqun.21.777.12</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<style type="text/css">
/*拼音检索功能全部css*/
#divselect{	margin:0;
			position:relative;
			z-index:10000;
			background: #fff;
			text-aling:left;}
#divselect ul{margin:0; padding:0}
#divselect ul li{margin:0;
				 height:22px;
				 line-height:22px;
				 border-bottom:1px solid grey;
				 border-left:1px solid grey;
				 border-right:1px solid grey;
				 padding-left:5px;
				 display: none;
				 cursor: pointer;
				 width: 300px;}
#divselect ul li input{cursor: pointer;}
#divselect input{height:22px;
				 line-height:22px;
				 padding:0px;}
</style>
<script>
///拼音检索下拉列表的全部函数,开头必须引用jquery
function showSoSo(){//显示搜索栏
	$('#soso').show();
	document.getElementById('soso').focus();
	$('#xbutton').show();
}
function hideSoSo(){//隐藏搜索栏
	$('#soso').hide();
	$('#xbutton').hide();
	$('#selectUl > li').hide();
}
function inputValue(value,text){//选中option
	$('#formName').attr('value',value);
	$('#seetext').attr('value',text);
	$('#sosoName').attr('value',text);
	$('#soso').attr('value',text);
	hideSoSo();
}
function soIt(){//搜索option列表

	var so = $("#soso").val();
	
	if(so.length>0){
		var kehuhz = document.getElementsByName('hzIndexs');
		var kehupy = document.getElementsByName('pyIndexs');
		var lis = document.getElementById('selectUl').getElementsByTagName('li'); 
	
		for(var c=0;c<kehuhz.length;c++){
			if(kehuhz[c].value.indexOf(so)>-1||kehupy[c].value.indexOf(so)>-1){
				lis[c].style.display='block';
			}else{
				lis[c].style.display='none';
			}
		}
	}
}
</script>
</head>
<body>

<div id='divselect'>
	<input type="text" id='seetext' style="width: 300px;" readonly="readonly" onclick="showSoSo()"/>
	<input id='soso' type="text" style="width: 300px;margin-left:-306px;display: none;" onkeyup="soIt()"/>
	<input type="button" id='xbutton' value="x" class='button3' style="display: none;" onclick='hideSoSo()'>
	<ul id="selectUl">
			<li onclick="inputValue(1,'选项一')">
				<input name='hzIndexs' value='选项一' type="text" style="width:100%;border: 0px;" readonly="readonly"/>
				<input name='pyIndexs' value='xuanxiangyi' type="hidden" readonly="readonly"/>
			</li>
			<li onclick="inputValue(2,'选项二')">
				<input name='hzIndexs' value='选项二' type="text" style="width:100%;border: 0px;" readonly="readonly"/>
				<input name='pyIndexs' value='xuanxianger' type="hidden" readonly="readonly"/>
			</li>
			<li onclick="inputValue(3,'北京大学')">
				<input name='hzIndexs' value='北京大学' type="text" style="width:100%;border: 0px;" readonly="readonly"/>
				<input name='pyIndexs' value='beijingdaxue' type="hidden" readonly="readonly"/>
			</li>
			<li onclick="inputValue(4,'清华大学')">
				<input name='hzIndexs' value='清华大学' type="text" style="width:100%;border: 0px;" readonly="readonly"/>
				<input name='pyIndexs' value='qinghuadaxue' type="hidden" readonly="readonly"/>
			</li>
	</ul>
</div>
<!--实际提交表单时用的隐藏域  测试时可写成type=text显示以供测试-->
<input type="hidden" name='formName' id='formName' readonly="readonly"/>
</body>
</html>
至于拼音的生成肯定不是手打的,一般option列表都是后台传过来的list用jstl标签去迭代,后台可以用pinyin4j.jar包去生成拼音


分享到:
评论

相关推荐

    jquery实现select带模糊搜索下拉选择框

    本教程将详细讲解如何使用 `jQuery` 实现一个具有模糊搜索功能的下拉选择框,以提升用户在交互时的体验。 首先,我们需要了解 `select` 元素在HTML中的基本用法。`&lt;select&gt;` 标签用于创建一个下拉列表,用户可以...

    jQuery div仿select下拉选项菜单美化获取html

    jQuery div仿select下拉选项菜单美化获取html jQuery div仿select下拉选项菜单美化获取html jQuery div仿select下拉选项菜单美化获取html jQuery div仿select下拉选项菜单美化获取html

    jquery仿百度下拉列表搜索框

    本项目“jquery仿百度下拉列表搜索框”旨在利用jQuery的功能,模仿百度搜索引擎的智能下拉列表功能,提供用户友好的模糊查询体验。 首先,我们要了解jQuery的核心概念。jQuery通过一种简化的语法,使开发者可以更...

    jquery select插件带搜索框的下拉选择框代码

    2. `jquery.searchableSelect.js`:这是插件的JavaScript文件,包含了实现搜索功能的代码。 3. `jquery.searchableSelect.css`:这是一个CSS文件,用于定义插件的样式,确保其在页面上正确显示。 接下来,让我们看...

    jQuery实现的搜索列表过滤

    总的来说,利用jQuery实现搜索列表过滤是一种高效的方法,它结合了jQuery的便捷性与JavaScript的动态特性,为用户提供了即时反馈和良好的交互体验。在实际项目中,还可以根据需求进一步扩展,比如添加模糊搜索、异步...

    jquery实现select互斥联动

    综上所述,jQuery实现的select互斥联动是一种常见的前端交互设计,通过监听和处理事件,动态调整下拉列表的选项,以满足不同场景下的用户需求。在理解基本原理后,可以根据具体项目需求进行扩展和优化。

    jquery实现的select列表选择框选中美化效果源码.zip

    本资源"jquery实现的select列表选择框选中美化效果源码.zip"提供了一种方法,利用jQuery来美化传统的HTML `&lt;select&gt;`元素,提升用户体验。 在Web开发中,原始的`&lt;select&gt;`元素往往样式单一,不符合现代网页的视觉...

    select2中文选项通过拼音或者首字母快速定位选项

    2. 自定义Select2的`templateResult`和`templateSelection`,实现拼音搜索逻辑。 3. 覆盖默认搜索,根据拼音匹配度排序。 4. 更新Select2配置,禁用Ajax加载。 通过这种方法,用户可以在不依赖服务器请求的情况下,...

    jQuery手机下拉框select

    总的来说,`jQuery手机下拉框select` 是通过jQuery Mobile库实现的一种优化移动端用户体验的解决方案。它提供了丰富的样式、交互和功能特性,帮助开发者创建出更符合移动设备需求的下拉菜单。通过理解和应用这些技术...

    jquery下拉搜索 select2实现下拉搜索

    jquery下拉搜索 select2实现下拉搜索

    jQuery插件-多选全选实时搜索下拉框

    **jQuery插件-多选全选实时搜索下拉框** 在前端开发中,用户界面的交互性和用户体验至关重要。jQuery作为一款强大的JavaScript库,为开发者提供了许多便利,使得创建动态、响应式的网页变得更加容易。"jQuery插件-...

    好看的select下拉框(带搜索功能)javaScript,jquery两种方式实现

    好看的select下拉框(带搜索功能),由于默认select样式过丑而且有些东西还不好改,这个是利用input框和ul来实现一个下拉框的效果。分为不带搜索功能和带搜索功能两个部分。以及jquery与javascript两种实现

    jQuery下拉条select插件,界面美化,拼音 筛选,智能 上下 展开

    jQuery下拉条select插件,拼音筛选,智能向上向下展开。 带查找输入框。 基于select2 Version: 3.3.2编写,增加汉语拼音筛选支持。 解压后可直接用浏览器打开看演示。 支持下列浏览器: * IE 8+ * Chrome 8+ * ...

    jquery模拟select

    * 模拟select * @param {box,tiggle} * @param box 父级别容器[模拟select最外围标签] * @param tiggle 展开事件 [*click | mouseover | 其他dom事件] * @return object 返回对象本身 * @disription 节点(html)内部...

    jQuery 仿 Select 下拉

    8. **多选支持**:对于支持多选的仿Select下拉,可以使用`&lt;input type="checkbox"&gt;`元素,配合CSS和jQuery实现多选功能。 9. **兼容性和优化**:确保仿Select下拉在不同的浏览器和设备上表现一致是重要的。需要考虑...

    Jquery combo-select

    其中,"jQuery combo-select"是一种常见的交互元素,它将传统的下拉选择器(select)与输入框(input)相结合,形成一种增强型的组合选择器,既提供了搜索功能,又允许用户自定义输入,极大地提升了用户体验。...

    基于Bootstrap和JQuery实现仿PC文件管理系统源码.zip

    基于Bootstrap和JQuery实现仿PC文件管理源码.zip基于Bootstrap和JQuery实现仿PC文件管理源码.zip基于Bootstrap和JQuery实现仿PC文件管理源码.zip基于Bootstrap和JQuery实现仿PC文件管理源码.zip基于Bootstrap和...

    jQuery-ComboSelect插件

    首先,jQuery-ComboSelect的核心功能是将传统的单选或单行的下拉列表转换为一个可多选、具有搜索功能的下拉框。用户可以通过输入关键词快速筛选出所需选项,提高了数据查找和选择的效率。这对于那些包含大量选项的...

    jquery搜索框下拉列表选择搜索分类效果.rar

    本示例“jquery搜索框下拉列表选择搜索分类效果”旨在实现一个交互式的搜索功能,其中用户可以通过下拉列表来选择特定的搜索分类,从而提高用户体验并提供更精确的搜索结果。 在C#编程环境中,虽然jQuery主要用于...

Global site tag (gtag.js) - Google Analytics