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 相关文章推荐
Dom操作之兼容技巧分享
Sep 20 Javascript
设置checkbox为只读(readOnly)的两种方式
Oct 11 Javascript
Javascript+CSS实现影像卷帘效果思路及代码
Oct 20 Javascript
无刷新上传文件并返回自定义值
Jun 11 Javascript
javascript将DOM节点添加到文档的方法实例分析
Aug 04 Javascript
JavaScript中的this,call,apply使用及区别详解
Jan 29 Javascript
BootStrap中关于Select下拉框选择触发事件及扩展
Nov 22 Javascript
滚动条的监听与内容随着滚动条动态加载的实现
Feb 08 Javascript
jQuery实现表格奇偶行显示不同背景色 就这么简单
Mar 13 Javascript
JavaScript中变量、指针和引用功能与操作示例
Aug 04 Javascript
node.js中ws模块创建服务端和客户端,网页WebSocket客户端
Mar 06 Javascript
基于vue.js实现购物车
Jan 15 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中debug_backtrace、debug_print_backtrace和匿名函数用法实例
2014/12/01 PHP
php使用memcoder将视频转成mp4格式的方法
2015/03/12 PHP
php简单日历函数
2015/10/28 PHP
php文件上传后端处理小技巧
2016/05/22 PHP
禁止js文件缓存的代码
2010/04/09 Javascript
js实现的常用的左侧导航效果
2013/10/17 Javascript
js使用栈来实现10进制转8进制与取除数及余数
2014/06/11 Javascript
javascript制作的cookie封装及使用指南
2015/01/02 Javascript
transport.js和jquery冲突问题的解决方法
2015/02/10 Javascript
深入探寻seajs的模块化与加载方式
2015/04/14 Javascript
NodeJs中的VM模块详解
2015/05/06 NodeJs
JavaScript中的some()方法使用详解
2015/06/09 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
2016/02/17 Javascript
老生常谈JavaScript 函数表达式
2016/09/01 Javascript
AngularJS中指令的四种基本形式实例分析
2016/11/22 Javascript
基于bootstrap的文件上传控件bootstrap fileinput
2016/12/23 Javascript
从零学习node.js之模块规范(一)
2017/02/21 Javascript
Windows下Node.js安装及环境配置方法
2017/09/18 Javascript
JavaScript实现精美个性导航栏筋斗云效果
2017/10/29 Javascript
jQuery仿移动端支付宝键盘的实现代码
2018/08/15 jQuery
React倒计时功能实现代码——解耦通用
2020/09/18 Javascript
Python抓包并解析json爬虫的完整实例代码
2020/11/03 Python
使用numpngw和matplotlib生成png动画的示例代码
2021/01/24 Python
HTML5 WebSocket实现点对点聊天的示例代码
2018/01/31 HTML / CSS
德国PC硬件网站:CASEKING
2016/10/20 全球购物
澳大利亚汽车零部件、音响及配件超市:Automotive Superstore
2018/06/19 全球购物
KENZO官网:高田贤三在法国创立的品牌
2019/05/16 全球购物
超市端午节活动方案
2014/01/23 职场文书
库房保管员岗位职责
2014/04/07 职场文书
《锄禾》教学反思
2014/04/08 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
绍兴鲁迅故居导游词
2015/02/09 职场文书
小学班主任自我评价
2015/03/11 职场文书
幼儿园音乐教学反思
2016/02/18 职场文书
使用redis生成唯一编号及原理示例详解
2021/09/15 Redis
MySQL创建管理HASH分区
2022/04/13 MySQL