手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >js点击文本框弹出可选择的checkbox复选框
js点击文本框弹出可选择的checkbox复选框
摘要:本文分享一段代码实例,它能够点击文本框的时候,能够弹出下拉的checkbox复选框,选中复选框就能够将值写入文本框中,可能在实际应用中的效果...

本文分享一段代码实例,它能够点击文本框的时候,能够弹出下拉的checkbox复选框,选中复选框就能够将值写入文本框中,可能在实际应用中的效果没有这么直白简单,不过可以作为一个例子演示,以便于学习者理解和扩展。

代码如下:

<html> <head> <meta charset="gb2312"> <title>js点击文本框弹出可选择的checkbox复选框</title> <style type="text/css"> #div{ margin-bottom:10px; position:relative; } #div1{ width:153px; padding-top:0px; padding-left:0px; position:absolute; } #div1 ul{ margin-top:0px; padding-left:0px; background-color:#ccc; list-style:none; } #div1 ul li{ padding-left:0px; } #div1 ul li input{ margin-left:15px; } .close{ display:none; } .open{ display:block; } </style> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> $(function(){ var position=$("#xx").offset(); $("#div1").offset({ top:position.top+22, left:position.left }); $("#xx").click(function(){ $("#NG").toggleClass("open"); }); $("#div1 input[name=ng]").click(function(){ var arr=new Array(); $("input[name=ng]:checked").each(function(key,value){ arr[key]=$(value).val(); }); $("#xx").val(arr.join(",")); }) }) </script> </head> <body> <div id="div"> <div align="center" id="div2" > <form id="form1"> <input type="text" readonly="readonly" id="xx"/> <input type="submit" value="查询"/> </form> </div> <div id="div1"> <ul id="NG" > <li><input type="checkbox" name="ng" value=1 />1</li> <li><input type="checkbox" name="ng" value=2 />2</li> <li><input type="checkbox" name="ng" value=3 />3</li> </ul> </div> </div> </body> </html>

以上代码实现了我们的要求,下面介绍一下它的实现过程。

代码注释:

1.$(function(){}),当文档结构完全加载完毕再去执行函数中的代码。

2.var position=$("#xx").offset(),获取文本框相对于document文档的偏移量,offset()函数返回的是一个对象,此对象包含两个属性left和top,分别表示相对于文档的水平和垂直偏移量。

3.$("#div1").offset({top:position.top+22,left:position.left}),设置弹出下拉菜单容器的相对文档的偏移量,第一个加22是为了使其在文本框的下面显示。

4.$("#xx").click(function(){$("#NG").toggleClass("open");}),为文本框注册click事件处理函数,点击它可以切换样式类open删除和添加,也就是设置下拉菜单的显示和隐藏。

5.$("#div1 input[name=ng]").click(function(){ }),为name属性值为ng的文本框注册click事件处理函数。

6.var arr=new Array(),创建一个数组,用来存放选中checkbox复选框的value值。

7.$("input[name=ng]:checked").each(function(key,value){arr[key]=$(value).val();}),将选中的复选框的值存入数组。

8.$("#xx").val(arr.join(","));,将数组元素连接成字符串写入文本框。

希望本文所述对大家学习javascript程序设计有所帮助。

【js点击文本框弹出可选择的checkbox复选框】相关文章:

jquery实现点击label的同时触发文本框点击事件的方法

js实现文本框选中的方法

自动检查并替换文本框内的字符

javascript实现删除前弹出确认框

JavaScript点击按钮后弹出透明浮动层的方法

JQuery中DOM事件冒泡实例分析

JavaScript实现单击下拉框选择直接跳转页面的方法

jQuery实现文本展开收缩特效

javascript实现点击按钮弹出一个可关闭层窗口同时网页背景变灰的方法

js实现字符串转日期格式的方法

精品推荐
分类导航