- 浏览: 175434 次
- 性别:
- 来自: 福州
文章分类
最新评论
-
mncc:
太好了!!!Mark一下!不过貌似那个冒泡的还少个右下角吧? ...
Google Maps 图标地址收藏 -
ivorytower:
去年5月捡了命回来,现在不评论那些豆腐渣工程……
汶川地震留给我们什么?单单建什么地震纪念馆是没有用的 -
lgx2351:
wtusmchen 写道blog写的不错啊,以后多过来学习:) ...
js学习笔记2-函数 -
wtusmchen:
blog写的不错啊,以后多过来学习:)
js学习笔记2-函数
文本框在当用户输入时,常常需要把相近的信息提示给用户,以方便用户选择。
总体的思路是:
在txt文本框的onkeyup事件中,发送ajax请求,到数据库去取相似的记录,把得到的结果构成字符串传到前台,再在前台里拆分来按要求显示。
ajax请求到后台取数据的代码忽略,只取js前台的代码:
var eventElement; function inputSuggest() { eventElement = event.srcElement || event.target; var eventEleValue = eventElement.value; if(eventEleValue){ var url = urlPrefix + "/jsp/vou_record_mgr/getLinkBrandAndModel.do"; pars = "EventEleValue="+encodeURIComponent(encodeURIComponent(eventEleValue)); new Ajax.Request( url, { parameters: pars, method:"get", onCreate:function(){ }, onComplete:function(originalRequest){ //alert(originalRequest.responseText); if(originalRequest.responseText.indexOf("#")==-1){ if($("reslut_div")) { $("reslut_div").innerHTML = ''; $("reslut_div").style.display = 'none'; return; } } var str = originalRequest.responseText.split("#"); var suggestStr = "<table width=\"100%\" border=\"1\" cellpadding=\"1\" cellspacing=\"1\">"; for(i=0; i < str.length - 1; i++) { suggestStr += '<tr><td onmouseover="onmouseOver(this);" onmouseout="onmousetOut(this);" onclick="setSuggestValue(this.innerHTML);" class="onmouset_out">' + str[i] + '</td></tr>'; } suggestStr += "</table>"; //先清空 if($("reslut_div")) { $("reslut_div").innerHTML = '';; } if(!$("reslut_div")){ var res_div = document.createElement('div'); res_div.id = "reslut_div"; }else{ res_div = $("reslut_div"); } res_div.innerHTML = suggestStr; res_div.style.background = '#99CCFF'; res_div.style.position='absolute'; res_div.style.left=frontShowMgr.getxy(eventElement).X+'px'; res_div.style.top=frontShowMgr.getxy(eventElement).Y+eventElement.clientHeight+'px'; res_div.style.width = eventElement.clientWidth +'px'; res_div.style.height = 150 +'px'; res_div.style.overflow = 'scroll'; res_div.style.border = '1px'; if(!$("reslut_div")){ document.body.appendChild(res_div); } res_div.style.display = ''; } } ); } } function onmouseOver(div) { div.style.background = '#FFDEAD'; div.style.cursor = 'hand'; } function onmousetOut(div) { div.style.background = '#99CCFF'; div.style.cursor = 'auto'; } function setSuggestValue(value) { eventElement.value = value; if($("reslut_div")) { $("reslut_div").innerHTML = ''; $("reslut_div").style.display = 'none'; return; } }
以下注意的几个知识点是:
1.当要动态的需要在前台展示一些东西的时候,常常的思路就是:
先document.createElement('div'),设置这个元素innerHTML和属性,最后document.body.appendChild()。
注意的是,有时候我们利用document中已存在的div来进行appendChild(),但如果没有这个已存在的div也没有必要写一个,只需要用document.body就可以了。因为有时候这个联动的下拉框可能做为一个jsp供其它人直接引用,如果你在jsp里create了div,引用多个这个jsp就会出现多个这样的div,这样就会有问题了。
2.用event.srcElement || event.target来获得事件触发对象。
3.用encodeURIComponent(encodeURIComponent(eventEleValue))来进行对汉字的url编码传递
3.样式方面:
设置元素的height为固定值且设置overflow,使得可以拖动滚动条。
元素的clientWidth为元素的宽度,而不是想当然的width或是style.width
把table的td的值赋给txt,用this.innerHTML来赋值过去
设置元素的position为absolute,设置元素的left,top为event元素的x,y值
getxy:function(e){ var x = 0; var y = 0; while(e){ x += e.offsetLeft; y += e.offsetTop; e = e.offsetParent; } return {X:x,Y:y} },
最终的效果如下:
发表评论
-
在一个定时器里频繁发ajax请求
2011-04-11 10:07 1769在一个定时器里频繁发ajax请求,最好设置一个全局变量,当请求 ... -
前台开发总结
2011-01-12 10:35 8031、如果在频繁地发送ajax请求,最好在前面的请求发送完成返回 ... -
TD中长串英文字母不能自动换行而汉字却可以自动换行
2010-12-23 10:06 1957例如:aaaaaaaaaaaaaaaaaaaaaaaaaaaa ... -
Google Maps 图标地址收藏
2010-11-27 10:46 2847Google Maps 图标 - ... -
js乱码
2010-05-30 16:08 01)在同一个工程下没有问题,可是如果跨工程的话,且引入的js有 ... -
ajax请求提供接口的讨论
2009-12-26 15:33 1066要提供一个查询某点周边的最近设施的功能给同事,在gis端的实现 ... -
ie8与ie6取form的讨论
2009-12-16 10:49 1404多frames下,在ie6下通过frames[i]为取得某个f ... -
把一个jsp分为两个div布局记录
2009-12-15 16:41 5628一个jsp页面想分成左右两块分开显示两块内容。这种效果很不错, ... -
js取整数四舍五入
2009-11-21 22:08 3441http://blog.csdn.net/Feiin/arch ... -
读“javascript权威指南”笔记(更新中。。。)
2009-11-14 13:00 0第一章: 第二章: 第三章: 第四章: 第五章: 第 ... -
grid拖动列头改变列宽
2009-10-21 17:19 1598grid中,当某一单元格的内容很多时,要能够拖动grid标题行 ... -
js常用功能-drag功能总结
2009-09-18 13:50 1234在做web开发中,拖动一个元素是很常见的功能,特别是对于浮动层 ... -
常用功能-tip相关知识总结
2009-09-18 08:48 1258在应用开中很常用的功能是tip,比如鼠标放在某个需要说明的元素 ... -
js学习笔记4-事件和事件处理
2009-09-16 22:18 10321. 总述: 本章将讲三种完全不同的不兼容的事件处理模型 ... -
构造结果集实现类似grid显示
2009-09-16 20:24 910在做应用开发中,最经常的操作是到后台数据库去获取数据,在前台用 ... -
grid里用右键来实现功能菜单
2009-09-15 20:22 1267在自定义grid中,如果一个grid的列很多,窗口无法显示这么 ... -
js学习笔记3-构造函数、类和原型
2009-09-06 16:18 27203. 构造函数、类和原型总述:对象是我们很熟悉的,常在程序中用 ... -
gird分页时form与url参数的探讨
2009-09-05 22:35 1170大家可能很常用一个查 ... -
js学习笔记2-函数
2009-09-02 23:01 14302. 函数 2.1函数直接量函数直接量是用作表达式,而不是用作 ... -
js学习笔记1-对象和数组
2009-08-19 23:03 8841. 对象和数组 总述对象 ...
相关推荐
在JavaFX中,实现百度文本框的下拉提示功能,主要涉及到的是文本输入与实时匹配的概念,这在很多用户界面中都有广泛的应用,如搜索引擎、输入法等。这个功能能够提高用户体验,帮助用户快速找到他们可能正在寻找的...
在JavaScript编程中,文本框(input type="text")下拉提示是一种常见的用户交互设计,它可以帮助用户在输入时快速选择或参考预设的选项。在这个实例中,我们结合了JavaScript和Cookie技术来实现这一功能。 首先,...
在本文中,我们将深入探讨如何创建一个自定义的 WPF(Windows Presentation Foundation)文本框控件,该控件具有自动下拉提示功能。这个控件允许用户在输入时进行模糊查询,并可以根据预设的延迟时间和输入字符长度...
"C#文本框输入提示功能 下拉框"这个主题就涉及到如何在文本框中实现智能提示和下拉列表的选择功能。 1. **文本框输入提示功能**: 这个功能通常指的是文本框的水印效果,即当文本框为空时显示一段提示文字,一旦...
在传统的文本框设计中,水印效果是指在文本框为空时显示的一段提示文字,当用户开始输入时,这些文字会自动消失。在WPF中,虽然没有内置的Watermark属性,但可以通过自定义控件或者使用第三方库来实现。一种常见的...
JavaScript文本框下拉自动补全提示是一种常见的交互设计,它极大地提升了用户在输入时的效率和体验。在网页开发中,这种功能常用于搜索框、表单输入等场景,允许用户在输入过程中根据已有的数据集获取匹配的建议,...
在IT行业中,输入框下拉提示插件是一种常见的交互元素,广泛应用于网页表单和搜索功能,以提高用户体验。这种插件允许用户在输入时自动显示与输入内容相匹配的建议选项,通常基于预设的数据集或者通过实时查询服务器...
JavaScript 文本框下拉提示,通常被称为自动补全或自动提示功能,是许多网页和应用程序中常见的一种交互设计。这种技术允许用户在输入文本时,系统根据已输入的部分内容提供匹配建议,从而提高输入效率和用户体验。...
在IT行业中,文本框输入值时过滤显示下拉选项是一种常见的交互设计,它极大地提高了用户在数据选择上的效率。这种功能通常应用于各种Web应用、桌面软件或者移动应用中,允许用户在输入时实时查看与输入内容相关的...
本文将详细探讨“精美表单样式”中的关键元素:下拉菜单、文本框和复选框,以及如何利用这些元素创建高效且吸引人的网页表单。 首先,下拉菜单是一种节省空间且用户友好的交互方式,常用于提供多个选项供用户选择。...
文本框下拉列表自动提示效果,用户在输入一个或多个值会自动提示数据库里面的值 RecommResource.aspx和RecommResource.aspx.cs文件是可以动态生成JS文件,另外外部还有一个JS
在Windows Forms(winForm)开发中,我们经常需要创建具有智能提示或检索功能的文本框,这能够提高用户的输入效率并提供更好的用户体验。这个“winForm 文本框检索功能”项目,显然旨在实现一个类似百度搜索框的效果...
- **下拉列表**:可以使用`JComboBox`或者自定义组件,将匹配到的选项以下拉列表的形式展示在文本框下方。当用户继续输入时,列表会实时更新。 - **气泡提示**:另一种常见方式是使用`JOptionPane`或者自定义的...
在文本框中输入文字时,在数据源(所有的提示项)查找匹配的选项,若匹配的选项数量>0,在文本框下方显示下拉列表供用户选择; 自动补全: 在匹配的选项中选择最合适的一项(通常为第一项),与用户输入做对比,...
文本框下拉自动选择功能,通常被称为Autocomplete或者Auto-suggestion,是许多现代网页和应用程序中常见的一种交互设计。这个功能极大地提升了用户输入的效率,因为它可以在用户输入时实时显示可能的匹配项,用户只...
jquery输入框下拉提示插件,,Select风格的下拉提示,鼠标只需点击文本框后,即可下拉出相关内容项,和搜索提示类似,基于jQuery的输入框提示功能,测试发现jQuery对这款插件的精确匹配不是太好,有时候会提示一些不...
1. **HTML 结构**:首先,我们需要创建一个文本框和一个用于显示提示结果的下拉列表。HTML 代码如下: ```html 请输入关键词"> ;"> ``` 2. **jQuery 事件绑定**:接下来,我们需要使用 jQuery 的 `keyup` 事件来...
关键字提示功能则可能通过一个下拉列表或者弹出框的形式出现,当用户在文本框中输入时,系统会根据已输入的字符提供相关的C#关键字建议。这通常涉及到自动补全算法,它可以基于用户的输入预测并显示可能的完成项。...
在ASP.NET开发中,"asp.net文本框下拉列表批量删除"是一个常见的需求,尤其是在处理大量数据时。这个功能允许用户通过输入关键词进行搜索,并一次性删除满足条件的多项选择。在本场景中,jQuery库被用来增强前端交互...
Flex文本框自动提示技术是基于Adobe Flex框架的一种用户体验优化功能,它允许用户在输入文本时获得即时的下拉建议或提示。这种功能在各种应用程序中非常常见,如搜索引擎、在线表单和数据输入界面,可以显著提高用户...