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 removeChild 使用注意事项
Apr 11 Javascript
JavaScript 判断指定字符串是否为有效数字
May 11 Javascript
javascript,jquery闭包概念分析
Jun 19 Javascript
JS中confirm,alert,prompt函数区别分析
Jan 17 Javascript
javascript动态加载二
Aug 22 Javascript
javascript中clone对象详解
Dec 03 Javascript
原生js实现移动端瀑布流式代码示例
Dec 18 Javascript
json定义及jquery操作json的方法
Sep 29 Javascript
浅谈Vue 初始化性能优化
Aug 31 Javascript
JavaScript 五大常见函数
Mar 23 Javascript
node.js如何自定义实现一个EventEmitter
Jul 16 Javascript
深入讲解Vue中父子组件通信与事件触发
Mar 22 Vue.js
论坛里点击别人帖子下面的回复,回复标题变成“回复 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 抓取网页图片并且另存为的实现代码
2010/03/24 PHP
Smarty变量用法详解
2016/05/11 PHP
PHP Oauth授权和本地加密实现方法
2016/08/12 PHP
php变量与字符串的增删改查操作示例
2020/05/07 PHP
jquery常用特效方法使用示例
2014/04/25 Javascript
javascript框架设计读书笔记之字符串的扩展和修复
2014/12/02 Javascript
快速掌握WordPress中加载JavaScript脚本的方法
2015/12/17 Javascript
Bootstrap Table使用方法详解
2016/08/01 Javascript
JS获取html元素的标记名实现方法
2016/10/08 Javascript
JS 中使用Promise 实现红绿灯实例代码(demo)
2017/10/20 Javascript
微信小程序自定义导航教程(兼容各种手机)
2018/12/12 Javascript
微信小程序实现上传图片裁剪图片过程解析
2019/08/22 Javascript
vue3.0搭配.net core实现文件上传组件
2020/10/29 Javascript
[01:02:54]完美世界DOTA2联赛PWL S2 FTD vs GXR 第一场 11.22
2020/11/26 DOTA
[37:03]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第二场 12.16
2020/12/18 DOTA
[09:13]DOTA2-DPC中国联赛 正赛 Ehome vs Magma 选手采访 1月19日
2021/03/11 DOTA
在Python程序中操作文件之flush()方法的使用教程
2015/05/24 Python
python 第三方库的安装及pip的使用详解
2017/05/11 Python
python中copy()与deepcopy()的区别小结
2018/08/03 Python
python实现简单加密解密机制
2019/03/19 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
对python3.4 字符串转16进制的实例详解
2019/06/12 Python
python实现图像高斯金字塔的示例代码
2020/12/11 Python
CSS3实例分享--超炫checkbox复选框和radio单选框
2014/09/01 HTML / CSS
shallow copy和deep copy的区别
2016/05/09 面试题
进修护士自我鉴定
2013/10/14 职场文书
公积金单位接收函
2014/01/11 职场文书
2014新年元旦活动策划方案
2014/02/18 职场文书
党员教师一句话承诺
2014/05/30 职场文书
四风问题对照检查整改措施思想报告
2014/10/05 职场文书
客房领班岗位职责
2015/02/11 职场文书
2015年主婚人婚礼致辞
2015/07/28 职场文书
2016大学生就业指导课心得体会
2016/01/15 职场文书
北京大学中文系教授推荐的10本小说
2019/08/08 职场文书
php TP5框架生成二维码链接
2021/04/01 PHP
nginx配置虚拟主机的详细步骤
2021/07/21 Servers