jquery.alert 弹出式复选框实现代码


Posted in Javascript onJune 15, 2009

//jQuery Alert Dialogs Plugin Version 1.0
//插件下载地址:http://abeautifulsite.net/notebook/87
自身的原方法为:

// Usage: 
// jAlert( message, [title, callback] ) 
// jConfirm( message, [title, callback] ) 
// jPrompt( message, [value, title, callback] ) 
1.新加一个multicheckbox 的公共方法: 
// Public methods 
multicheckbox : function (message, value, title, callback) { 
if (title == null ) title = 'multicheckbox '; 
$.alerts._show(title, message, value, 'multicheckbox ', function (result) { 
if (callback) callback(result); 
}); 
},

2 .在私有方法_show:function (title, msg, value, type, callback){...} 中增加对multicheckbox 的控制:
// Private methods
------------------------ 关键部分 ------------------------------
case 'multicheckbox' :
$("#popup_message" ).append(value).after('<div id="popup_panel"> <span id="checkall" style="cursor:pointer;border:1px solid #FFCC35;font-family:宋体;font-weight:bold;background-color:#FFFF99;color:#0000CC;margin:3px;padding:3px 10px 3px 10px;">全选</span>      <span id="popup_ok" style="cursor:pointer;border:1px solid #CF4342;font-family:宋体;font-weight:bold;background-color:#DFF1FF;color:#CF4342;margin:3px;padding:3px 10px 3px 10px;">确定</span> <span id="popup_cancel" style="cursor:pointer;border:1px solid #CF4342;font-family:宋体;font-weight:bold;background-color:#DFF1FF;color:#0000CC;margin:3px;padding:3px 10px 3px 10px;">取消</span></div> ');
var $spanHover = $("#dialog span" );
$spanHover.hover(
function () {$(this ).addClass("spanmousehover" );},
function () {$(this ).removeClass("spanmousehover" );}
);
$("#checkall" ).click(function () {
if ($("#checkall" ).html() == "全选" ) {
$("#dialog input" ).each(function () {$(this ).attr("checked" , true );});
$("#checkall" ).html("取消全选" );
}
else {
$("#dialog input" ).each(function () {$(this ).attr("checked" , false);});
$("#checkall" ).html("全选" );
}
});
$("#delcheckall" ).click(function () {
$("#dialog input" ).each(function () {$(this ).attr("checked" , false );});
});
$("#popup_ok" ).click(function () {
var getAll = "";
var test = $('#dialog input' ).each(function () {if (this .checked) {getAll += $(this ).val() + ',';}});
var valback = getAll.substring(0, getAll.length - 1);//去掉最后一个','号
$.alerts._hide();
$("#ctl00_ContentPlaceHolder_main_TextBox_recever_sel" ).blur();
if (callback) callback(valback);// 在单击确定后将所有选中的内容回传到输入框中
});
$("#popup_cancel" ).click(function() {
$.alerts._hide();
$("#ctl00_ContentPlaceHolder_main_TextBox_recever_sel" ).blur();
if (callback) callback(null);
});
/ /----------------------------------------------------------------------
在 // Shortuct functions 中增加如下名称:
jMulticheckbox = function (message, value, title, callback) {
$.alerts.multicheckbox(message, value, title, callback);
};
3 .在前段代码的input 输入框(或asp:TextBox )的onfocus 属性中调用如下脚本:
jMulticheckbox('' , '<% = allcheckinfo.ToString() %> ' , '请选择接收部门' , function (r) {
//定义传入html元素,弹出框主标题,callback结果(即选择的内容)
if (r!=null )
$('#ctl00_ContentPlaceHolder_main_TextBox_recever_sel' ).val(r);
});
其 中"allcheckinfo.ToString() "可以为后台从相应的业务逻辑中取出的结果,如:
StringBuilder allinfo = new StringBuilder ("" );
allinfo.Append("<div id=\"dialog\" style=\"padding:0; margin:0;height:250px;width:280px;text-align:left;line-height:20px;overflow:auto\"> " );
...
while (OracleDataReader.Read())
{
string bumeninfo = oradr[0 ].ToString();
allinfo.Append("<span class=\"spanmouse\"><input name=\"chk1\" type=\"checkbox\" id=\"c" + flag + "\" value=\"" + bumeninfo + "\" /><label for=\"c" + flag + "\">" + bumeninfo + "</label></span><br />" );
}
...
allinfo.Append("</div>" );
即 将<div>...</div> 返回给JS,最后效果如下:
jquery.alert 弹出式复选框实现代码 
Javascript 相关文章推荐
关于javascript document.createDocumentFragment()
Apr 04 Javascript
js实现仿京东2级菜单效果(带延时功能)
Aug 27 Javascript
webix+springmvc session超时跳转登录页面
Oct 30 Javascript
基于vue.js实现图片轮播效果
Dec 01 Javascript
原生js实现图片放大缩小计时器效果
Jan 20 Javascript
BootStrap表单控件之复选框checkbox和单选择按钮radio
May 23 Javascript
AngularJS日程表案例详解
Aug 15 Javascript
node作为中间服务层如何发送请求(发送请求的实现方法详解)
Jan 02 Javascript
vue文件树组件使用详解
Mar 29 Javascript
Bootstrap 模态框自定义点击和关闭事件详解
Aug 10 Javascript
详解Vue的ref特性的使用
Jan 24 Javascript
vue实现打地鼠小游戏
Aug 21 Javascript
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
Jun 14 #Javascript
FireFox JavaScript全局Event对象
Jun 14 #Javascript
Javascript 错误处理的几种方法
Jun 13 #Javascript
Javascript 学习书 推荐
Jun 13 #Javascript
javascript 框架小结 个人工作经验
Jun 13 #Javascript
动态刷新 dorado树的js代码
Jun 12 #Javascript
firefo xml 读写实现js代码
Jun 11 #Javascript
You might like
PHP读取文件并可支持远程文件的代码分享
2012/10/03 PHP
linux中cd命令使用详解
2015/01/08 PHP
四个PHP非常实用的功能
2015/09/29 PHP
thinkphp5框架API token身份验证功能示例
2019/05/21 PHP
JS 日期验证正则附asp日期格式化函数
2009/09/11 Javascript
jquery的Theme和Theme Switcher使用小结
2010/09/08 Javascript
父元素与子iframe相互获取变量和元素对象的具体实现
2013/10/15 Javascript
jquery live()调用不存在的解决方法
2014/02/26 Javascript
从数据库读取数据后将其输出成html标签的三种方法
2014/10/13 Javascript
jQuery检测输入的字符串包含的中英文的数量
2015/04/17 Javascript
js淡入淡出的图片轮播效果代码分享
2015/08/24 Javascript
javascript和jquery实现用户登录验证
2016/05/04 Javascript
jQuery之动画效果大全
2016/11/09 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
微信小程序教程系列之设置标题栏和导航栏(7)
2020/06/29 Javascript
详解基于angular-cli配置代理解决跨域请求问题
2017/07/05 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
vue初始化动画加载的实例
2018/09/01 Javascript
深入理解 JS 垃圾回收
2019/06/03 Javascript
Jquery让form表单异步提交代码实现
2019/11/14 jQuery
jQuery 实现DOM元素拖拽交换位置的实例代码
2020/07/14 jQuery
[16:56]heroes英雄教学 司夜刺客
2014/09/18 DOTA
python 2.6.6升级到python 2.7.x版本的方法
2016/10/09 Python
Python读取mat文件,并转为csv文件的实例
2018/07/04 Python
Python3.7中安装openCV库的方法
2018/07/11 Python
Python3安装pip工具的详细步骤
2019/10/14 Python
解决Python 异常TypeError: cannot concatenate 'str' and 'int' objects
2020/04/08 Python
Python爬取你好李焕英豆瓣短评生成词云的示例代码
2021/02/24 Python
通信工程专业女生个人求职信
2013/09/21 职场文书
医学院毕业生自荐信
2013/11/08 职场文书
大学生简历的个人自我评价
2013/12/04 职场文书
学校招生宣传广告词
2014/03/19 职场文书
新闻传播专业求职信
2014/07/22 职场文书
党员教师群众路线思想汇报范文
2014/10/28 职场文书
导游词之秦始皇兵马俑博物馆
2019/09/29 职场文书
MySQL 外连接语法之 OUTER JOIN
2022/04/09 MySQL