jquery使用ul模拟select实现表单美化的方法


Posted in Javascript onAugust 18, 2015

本文实例讲述了jquery使用ul模拟select实现表单美化的方法。分享给大家供大家参考。具体如下:

这里使用jquery实现ul模拟select,是jQuery插件实现的Select下拉菜单效果,类似的功能网上已经有一些了,每一款都代表了不同的编程思路,为学习提供一份参考。

运行效果截图如下:

jquery使用ul模拟select实现表单美化的方法

在线演示地址如下:

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>ul模拟select</title>
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<style type="text/css">
<!--
.select_box {width:150px; position:relative; margin:10px;padding:0; font-size:12px;}
.submit_box {width:180px; position:relative; margin:10px;padding:0; font-size:12px; text-align:center;}
ul,li {list-style-type:none; padding:0; margin:0}
.select_box input {cursor:pointer; display:block; line-height:25px; width:100%; height:25px; overflow:hidden;border:1px solid #ccc; padding-right:20px; padding-left:10px; background:url(select_input_bg.gif) no-repeat 160px center;}
.select_box ul {width:180px; position:absolute; left:0; top:25px; border:1px solid #ccc; background:#fff; overflow: hidden;display:none; background:#ebebeb; z-index:99999;}
.select_box ul li {display:block;height:30px;overflow:hidden;line-height:30px;padding-left:5px;width:100%;cursor:pointer;}
.hover {background:#ccc;}
-->
</style>
<script type="text/javascript">
$(document).ready(function(){
 $(".select_box input").click(function(){
  var thisinput=$(this);
  var thisul=$(this).parent().find("ul");
  if(thisul.css("display")=="none"){
   if(thisul.height()>200){thisul.css({height:"200"+"px","overflow-y":"scroll" })};
   thisul.fadeIn("100");
   thisul.hover(function(){},function(){thisul.fadeOut("100");})
   thisul.find("li").click(function(){thisinput.val($(this).text());thisul.fadeOut("100");}).hover(function(){$(this).addClass("hover");},function(){$(this).removeClass("hover");});
   }
  else{
   thisul.fadeOut("fast");
   }
 })
 $("#submit").click(function(){
  var endinfo="";
  $(".select_box input:text").each(function(i){
   endinfo=endinfo+(i+1)+":"+$(this).val()+";\n";        
  })       
  alert(endinfo);      
 })
});
</script>
</head>
<body>
 <div class="select_box"><input id="myselect" type="text" value="请选择..." readonly="readonly">
  <ul class="select_ul">
   <li>选项一</li>
   <li>选项二</li>
   <li>选项三</li>
   <li>选项四</li>
   <li>选项五</li>
  </ul>
 </div>
 <div class="select_box"><input id="myselect" type="text" value="请选择..." readonly="readonly">
  <ul class="select_ul">
   <li>选项一</li>
   <li>选项二</li>
  </ul>
 </div>
 <div class="select_box"><input id="myselect" type="text" value="请选择..." readonly="readonly">
  <ul class="select_ul">
   <li>选项一</li>
   <li>选项二</li>
   <li>选项三</li>
   <li>选项四</li>
   <li>选项五</li>
   <li>选项一</li>
   <li>选项二</li>
   <li>选项三</li>
   <li>选项四</li>
   <li>选项五选项五选项五选项五选项五</li>
  </ul>
 </div>
 <div class="submit_box"><input type="button" id="submit" value="提交数据" /></div>
</body>
</html>

希望本文所述对大家的jquery程序设计有所帮助。

Javascript 相关文章推荐
JQuery 技巧和窍门整理(8个)
Apr 22 Javascript
Jquery中children与find之间的区别详细解析
Nov 29 Javascript
JavaScript作用域链示例分享
May 27 Javascript
jQuery中noconflict函数的实现原理分解
Feb 03 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
Mar 03 Javascript
Jquery修改image的src属性,图片不加载问题的解决方法
May 17 Javascript
JavaScript中const、var和let区别浅析
Oct 11 Javascript
AngularJS过滤器filter用法分析
Dec 11 Javascript
微信小程序之MaterialDesign--input组件详解
Feb 15 Javascript
JS沙箱模式实例分析
Sep 04 Javascript
vue2.0使用v-for循环制作多级嵌套菜单栏
Jun 25 Javascript
JavaScript如何实现防止重复的网络请求的示例
Jan 28 Javascript
jQuery实现的漂亮表单效果代码
Aug 18 #Javascript
jquery实现select下拉框美化特效代码分享
Aug 18 #Javascript
js实现iPhone界面风格的单选框和复选框按钮实例
Aug 18 #Javascript
JS+DIV+CSS实现仿表单下拉列表效果
Aug 18 #Javascript
js模拟淘宝网的多级选择菜单实现方法
Aug 18 #Javascript
js实现Select头像选择实时预览代码
Aug 17 #Javascript
基于jquery实现放大镜效果
Aug 17 #Javascript
You might like
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
2011/07/29 PHP
thinkPHP查询方式小结
2016/01/09 PHP
当鼠标滑过文本框自动选中输入框内容的JS代码分享
2013/11/26 Javascript
JS解析XML实例分析
2015/01/30 Javascript
JavaScript中用于生成随机数的Math.random()方法
2015/06/15 Javascript
在Node.js应用中使用Redis的方法简介
2015/06/24 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
2016/06/02 Javascript
使用Curl命令查看请求响应时间方法
2016/11/04 Javascript
解析AngularJS中get请求URL出现的跨域问题
2016/12/01 Javascript
Node.js之网络通讯模块实现浅析
2017/04/01 Javascript
vue实现移动端图片裁剪上传功能
2020/08/18 Javascript
Angular2实现组件交互的方法分析
2017/12/19 Javascript
vue项目中使用ueditor的实例讲解
2018/03/05 Javascript
前后端如何实现登录token拦截校验详解
2018/09/03 Javascript
详解Next.js页面渲染的优化方案
2019/01/27 Javascript
详解小程序退出页面时清除定时器
2019/04/28 Javascript
vue前后分离调起微信支付
2019/07/29 Javascript
JavaScript实现图片放大预览效果
2020/11/02 Javascript
[53:50]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
python实现上传样本到virustotal并查询扫描信息的方法
2014/10/05 Python
pandas数据清洗,排序,索引设置,数据选取方法
2018/05/18 Python
对python3新增的byte类型详解
2018/12/04 Python
Python hashlib加密模块常用方法解析
2019/12/18 Python
详解Python实现进度条的4种方式
2020/01/15 Python
Django 返回json数据的实现示例
2020/03/05 Python
Python使用graphviz画流程图过程解析
2020/03/31 Python
欧缇丽英国官方网站:Caudalie英国
2016/08/17 全球购物
short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
2014/09/26 面试题
车间班组长岗位职责
2013/11/13 职场文书
物流仓储计划书
2014/01/10 职场文书
个人租房协议书范本
2014/09/30 职场文书
信用卡工资证明范本
2014/10/17 职场文书
2015年六年级班主任工作总结
2015/10/15 职场文书
小学四年级作文之最感动的一件事
2019/11/01 职场文书
详解mysql三值逻辑与NULL
2021/05/19 MySQL
xhunter1.sys可以删除嘛? win11提示xhunter1.sys驱动不兼容解决办法
2022/09/23 数码科技