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 相关文章推荐
JavaScript 无符号右移运算符
Apr 17 Javascript
页面回到顶部的三种实现(锚标记,js)
Oct 01 Javascript
使用jQuery.fn自定义jQuery翻页插件
Jan 20 Javascript
js判读浏览器是否支持html5的canvas的代码
Nov 18 Javascript
浅谈javascript的分号的使用
May 12 Javascript
微信支付如何实现内置浏览器的H5页面支付
Sep 25 Javascript
Javascript this 函数深入详解
Dec 13 Javascript
JS实现一次性弹窗的方法【刷新后不弹出】
Dec 26 Javascript
JS匹配日期和时间的正则表达式示例
May 12 Javascript
JS+HTML5本地存储Localstorage实现注册登录及验证功能示例
Feb 10 Javascript
vue路由切换时取消之前的所有请求操作
Sep 01 Javascript
swiper4实现移动端导航栏tab滑动切换
Oct 16 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
使用Xdebug调试和优化PHP程序之[1]
2007/04/17 PHP
php实现兼容2038年后Unix时间戳转换函数
2015/03/18 PHP
PHP并发查询MySQL的实例代码
2017/08/09 PHP
如何利用预加载优化Laravel Model查询详解
2017/08/11 PHP
Laravel 集成 Geetest验证码的方法
2018/05/14 PHP
php-fpm中max_children的配置
2019/03/15 PHP
PHP+swoole+linux实现系统监控和性能优化操作示例
2019/04/15 PHP
ExtJS 2.0 实用简明教程之布局概述
2009/04/29 Javascript
初试jQuery EasyUI 使用介绍
2010/04/01 Javascript
jquery tab插件制作实现代码
2010/06/22 Javascript
JS获取网页属性包括宽、高等等
2014/04/03 Javascript
jQuery插件分享之分页插件jqPagination
2014/06/06 Javascript
html文本框提示效果的示例代码
2014/06/28 Javascript
JsRender for index循环索引用法详解
2014/10/31 Javascript
pace.js页面加载进度条插件
2015/09/29 Javascript
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
Bootstrap缩略图的创建方法
2017/03/22 Javascript
yarn的使用与升级Node.js的方法详解
2017/06/04 Javascript
js实现点击按钮复制文本功能
2020/07/20 Javascript
npm全局模块卸载及默认安装目录修改方法
2018/05/15 Javascript
原生JS实现前端本地文件上传
2018/09/08 Javascript
vue实现自定义H5视频播放器的方法步骤
2019/07/01 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
2019/12/29 Javascript
在Python中使用itertools模块中的组合函数的教程
2015/04/13 Python
对numpy中向量式三目运算符详解
2018/10/31 Python
Python中整数的缓存机制讲解
2019/02/16 Python
python字典嵌套字典的情况下找到某个key的value详解
2019/07/10 Python
pytorch动态网络以及权重共享实例
2020/01/06 Python
详解CSS3+JS完美实现放大镜模式
2020/12/03 HTML / CSS
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
行政助理岗位职责
2013/11/10 职场文书
银行授权委托书格式
2014/10/10 职场文书
岗位职责范本大全
2015/02/26 职场文书
2015年爱国卫生工作总结
2015/04/22 职场文书
Django实现在线无水印抖音视频下载(附源码及地址)
2021/05/06 Python
springboot+zookeeper实现分布式锁
2022/03/21 Java/Android