jquery 弹出层注册页面等(asp.net后台)


Posted in Javascript onJune 17, 2010

【一】需求如下:
1:注册不新开页面,改成弹出层,
2:新增用户买房欲望调查,
3:用户名自动检索出推荐的用户名,
4:出生日期用户输入改成控件选择。
5:尽力提高用户体验,吸引用户注册。
【二】无图无真相。

1:简化后的页面:

jquery 弹出层注册页面等(asp.net后台)

2:浮出文字提示和圆角边框:

jquery 弹出层注册页面等(asp.net后台)

jquery 弹出层注册页面等(asp.net后台)

3:支持民意调查(异步提交)

jquery 弹出层注册页面等(asp.net后台)

4:自动检索推荐用户名(测试数据)

jquery 弹出层注册页面等(asp.net后台)

5:数据有效性验证

jquery 弹出层注册页面等(asp.net后台)

6:日历

jquery 弹出层注册页面等(asp.net后台)

jquery 弹出层注册页面等(asp.net后台)

7:支持拖拽

jquery 弹出层注册页面等(asp.net后台)

8:滑入显示

jquery 弹出层注册页面等(asp.net后台)

9:over

jquery 弹出层注册页面等(asp.net后台)

【三】代码分析
1.弹出层的制作,
a.先引用这三个:

<script src="jquery-1.4.2.min.js" type="text/javascript" language="javascript"></script> 
<script src="jquery-impromptu.3.1.min.js" type="text/javascript" language="javascript"></script> 
<link rel="stylesheet" media="all" type="text/css" href="examples.css" />

b.调用这个方法$.prompt,实现弹出。

2.浮出文字
a.先引用这两个:

<link rel="stylesheet" media="all" type="text/css" href="jquery.tooltip.css" /> 
<script src="jquery.tooltip.min.js" type="text/javascript" language="javascript"></script>

b.调用下面代码实现浮出:
代码
$("#suggest2").tooltip({bodyHandler: function() {return "用户名必须以字母开头";},showURL: false}); 
$("#cemail").tooltip({bodyHandler: function() {return "建议使用新浪游戏";},showURL: false}); 
$("#Text1").tooltip({bodyHandler: function() {return "未成年人请不要注册";},showURL: false});

3.投票
a.先引用下面两个:

<script type="text/javascript" src="jquery.rater.js"></script> 
<link rel="stylesheet" type="text/css" href="rater.css" media="screen" />

b.调用$('#demo2').rater('Handler1.ashx')实现投票

4.自动检索推荐用户名(自动完成)
a.先引用下面两个

<script src="jquery.autocomplete.min.js" type="text/javascript" language="javascript"></script> 
<link rel="stylesheet" media="all" type="text/css" href="jquery.autocomplete.css" /> 
<script src="localdata.js" type="text/javascript" language="javascript"></script>

b.调用 $("#suggest2").focus().autocomplete(cities);实现自动检索,(用的是localdata.js里面的本地测试数据)

5.数据校验
a.先引用这 <script src="jquery.validate.js" type="text/javascript" language="javascript"></script>
再写如下CSS:

<style type="text/css"> 
#commentForm { width: 500px; } 
#commentForm label { width: 500px; } 
#commentForm label.error, #commentForm input.submit { margin-left: 0px;color: red; } 
</style>

(commentForm 为form的ID)
b.调用这个$("#commentForm").validate()实现验证;form里面的class和一些属性配置好,一切验证全自动。
如:邮箱<input id="cemail" name="email" class="required email" />

6.日历
说到这个惭愧啊!开始用的JQuery的日历插件,后来由于其不能置于弹框的上面,所以改用另外一个。
a.先引用这两个

<script src="calendar2008.js" type="text/javascript" language="javascript"></script> 
<link rel="stylesheet" media="all" type="text/css" href="rightbar.css" />

b.再写如下代码
var c = new Calendar("c"); 
document.write(c); 
//下面两个用为微调定位 
c.offsetTop =22; 
c.offsetLeft = 25;

html代码:

<input class="required dateISO" name="begintime" type="text" id="Text1" size="21" onfocus="c.showMoreDay = false;c.show(this);" value=""/>

可以看得出,他class="required dateISO" 自动验证时间格式
7.拖拽
a.先引用这个: <script src="jquery-ui.min.js" type="text/javascript" language="javascript"></script>
b.再写这个$("xxx").draggable();实现拖拽

8.滑入显示:
插件提供了扩展:

$(document).ready(function() { 
$.fn.extend({ 
dropIn: function(speed, callback){ 
var $t = $(this); 
if($t.css("display") == "none"){ 
eltop = $t.css('top'); 
elouterHeight = $t.outerHeight(true); 
$t.css({ top: -elouterHeight, display: 'block' }) 
.animate({ top: eltop },speed,'swing', callback); 
} 
} 
}); 
});

调用$.prompt("mes",{show:'dropIn'}即可实现滑入。

9.圆角边框。
a.先引用这个 <script src="jquery.corner.js" type="text/javascript" language="javascript"></script>
b.调用$.("xxx").corner("cc:#d1c7b7");
c.注意事项:四个角所缺的地方的颜色也是可设置的,一般都和背景色一致。

【四】总结
一般命名插件的CSS和脚本命名都很规范,所以难得出现冲突。只要CSS和Js不冲突,就可以 放心用,随便用,乱着用。

【五】求助(已解决)
本来想清一色的JQuery插件的,结果JQuery日历插件浮不到弹出层的上面,所以换了另外一个日历控件。气得我把z-index设成10000000000000000,结果可想而知----依然浮不上。找不到哪里CSS冲突了,哪个发现了告诉我一下。

table.jCalendar { 
border: 1px solid #000; 
background: #aaa; 
border-collapse: separate; 
border-spacing: 2px; 
z-index: 100000000000000000000000000000000; 
position:absolute; 
}

解决办法:
方法一:
在你的页面开始出定义下面的样式
.ui-datepicker {z-index:1200;}

当调用dialog时用下面的代码
jQuery("#midialog").dialog({zIndex:900});

方法二:

[code]
.datepicker({
beforeShow: function (i, e) {
var z = jQuery(i).closest(".ui-dialog").css("z-index") + 4;
e.dpDiv.css('z-index', z);
}
})
代码打包下载
作者:张磊(zhanglei's Blog)

Javascript 相关文章推荐
ExtJS下 Ext.Direct加载和提交过程排错小结
Apr 02 Javascript
JavaScript 创建运动框架的实现代码
May 08 Javascript
ajax读取数据后使用jqchart显示图表的方法
Jun 10 Javascript
动态创建按钮的JavaScript代码
Jan 29 Javascript
js 弹出对话框(遮罩)透明,可拖动的简单实例
Jul 11 Javascript
ReactNative-JS 调用原生方法实例代码
Oct 08 Javascript
详解10分钟学会vue滚动行为
Sep 21 Javascript
详解Vue CLI3配置解析之css.extract
Sep 14 Javascript
node命令行工具之实现项目工程自动初始化的标准流程
Aug 12 Javascript
jquery制作的移动端购物车效果完整示例
Feb 24 jQuery
JavaScript实时更新当前的时间的示例代码
Jul 15 Javascript
vue实现把接口单独存放在一个文件方式
Aug 13 Javascript
jquery 多行滚动代码(附详细解释)
Jun 17 #Javascript
关于juqery radio写法的兼容性问题(新老版本jquery)
Jun 14 #Javascript
jQuery+jqmodal弹出窗口实现代码分明
Jun 14 #Javascript
ExtJS 设置级联菜单的默认值
Jun 13 #Javascript
js 未结束的字符串常量错误解决方法
Jun 13 #Javascript
JSON 和 JavaScript eval使用说明
Jun 13 #Javascript
ExtJS PropertyGrid中使用Combobox选择值问题
Jun 13 #Javascript
You might like
一拳超人中怪人协会钦定! S级别最强四人!
2020/03/02 日漫
PHP的FTP学习(一)
2006/10/09 PHP
php守护进程 加linux命令nohup实现任务每秒执行一次
2011/07/04 PHP
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
PHP检测移动设备类mobile detection使用实例
2014/04/14 PHP
PHP YII框架开发小技巧之模型(models)中rules自定义验证规则
2015/11/16 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
取得父标签
2006/11/14 Javascript
form中限制文本字节数js代码
2007/06/10 Javascript
JS对URL字符串进行编码/解码分析
2008/10/25 Javascript
JavaScript小技巧 2.5 则
2010/09/12 Javascript
jquery对象和DOM对象的区别介绍
2013/08/09 Javascript
jQuery手动点击实现图片轮播特效
2020/04/20 Javascript
使用jQuery处理AJAX请求的基础学习教程
2016/05/10 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
JavaScript Ajax编程 应用篇
2016/07/02 Javascript
jQuery easyui刷新当前tabs的方法
2016/09/23 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
详解react-webpack2-热模块替换[HMR]
2017/08/03 Javascript
JS组件系列之Gojs组件 前端图形化插件之利器
2017/11/29 Javascript
jQuery实现侧边栏隐藏与显示的方法详解
2018/12/22 jQuery
Vue v-model组件封装(类似弹窗组件)
2020/01/08 Javascript
[02:50]【扭转乾坤,只此一招】DOTA2永雾林渊版本开启新篇章
2020/12/22 DOTA
python dict remove数组删除(del,pop)
2013/03/24 Python
Python 创建子进程模块subprocess详解
2015/04/08 Python
Python3中多线程编程的队列运作示例
2015/04/16 Python
python3.0 模拟用户登录,三次错误锁定的实例
2017/11/02 Python
Python列表list排列组合操作示例
2018/12/18 Python
django foreignkey(外键)的实现
2019/07/29 Python
Django缓存系统实现过程解析
2019/08/02 Python
香蕉共和国Banana Republic官网:美国GAP旗下偏贵族风格服饰品牌
2016/11/21 全球购物
Sam’s Club山姆会员商店:沃尔玛旗下高端会员制商店
2017/01/16 全球购物
网上书店创业计划书
2014/01/12 职场文书
《梅兰芳学艺》教学反思
2014/02/24 职场文书
逃课检讨书范文
2015/05/06 职场文书
pytorch中的model=model.to(device)使用说明
2021/05/24 Python