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 相关文章推荐
List Installed Hot Fixes
Jun 12 Javascript
JavaScript Event学习第十一章 按键的检测
Feb 10 Javascript
JS格式化数字金额用逗号隔开保留两位小数
Oct 18 Javascript
利用js判断浏览器类型(是否为IE,Firefox,Opera浏览器)
Nov 22 Javascript
IE8的JavaScript点击事件(onclick)不兼容的解决方法
Nov 22 Javascript
深入解析Backbone.js框架的依赖库Underscore.js的作用
May 07 Javascript
详解原生JavaScript实现jQuery中AJAX处理的方法
May 10 Javascript
vue-cli的webpack模板项目配置文件分析
Apr 01 Javascript
在vue中使用公共过滤器filter的方法
Jun 26 Javascript
Vue项目添加动态浏览器头部title的方法
Jul 11 Javascript
JavaScript常用工具函数库汇总
Sep 17 Javascript
浅谈 JavaScript 沙箱Sandbox
Nov 02 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中使用模板的方法
2008/05/24 PHP
PHP生成唯一的促销/优惠/折扣码(附源码)
2012/12/28 PHP
thinkPHP下的widget扩展用法实例分析
2015/12/26 PHP
javascript 文本框水印/占位符(watermark/placeholder)实现方法
2012/01/15 Javascript
基于jquery实现的一个选择中国大学的弹框 (数据、步骤、代码)
2012/07/26 Javascript
js跑马灯代码(自写)
2013/04/17 Javascript
JavaScript改变HTML元素的样式改变CSS及元素属性
2013/11/12 Javascript
JS关键字球状旋转效果的实例代码
2013/11/29 Javascript
22点关于jquery性能优化的建议
2014/05/28 Javascript
js调试工具Console命令详解
2014/10/21 Javascript
实例解析JS布尔对象的toString()方法和valueOf()方法
2015/10/25 Javascript
浅谈Angular.js中使用$watch监听模型变化
2017/01/10 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
2017/01/13 Javascript
jQuery实现标签页效果实战(4)
2017/02/08 Javascript
Angular2生命周期钩子函数的详细介绍
2017/07/10 Javascript
vue中for循环更改数据的实例代码(数据变化但页面数据未变)
2017/09/15 Javascript
浅谈Vue 性能优化之深挖数组
2018/12/11 Javascript
仿iPhone通讯录制作小程序自定义选择组件的实现
2019/05/23 Javascript
Elasticsearch实现复合查询高亮结果功能
2019/09/10 Javascript
Python设计模式编程中解释器模式的简单程序示例分享
2016/03/02 Python
Python字典中的键映射多个值的方法(列表或者集合)
2018/10/17 Python
python学习开发mock接口
2019/04/28 Python
keras中的卷积层&amp;池化层的用法
2020/05/22 Python
pytorch简介
2020/11/11 Python
精灵市场:Pixie Market
2019/06/18 全球购物
KIKO MILANO俄罗斯官网:意大利领先的化妆品和护肤品品牌
2021/01/09 全球购物
德国的各种媒体在线商店:Thalia.de(书籍、电子书、玩具等)
2020/10/08 全球购物
C++是不是类型安全的
2014/02/18 面试题
师范大学应届生求职信
2013/11/21 职场文书
教育专业自荐书范文
2013/12/17 职场文书
大学活动总结格式
2014/04/29 职场文书
施工安全生产承诺书
2014/05/23 职场文书
民主生活会对照检查材料范文
2014/10/01 职场文书
2016年中秋节慰问信
2015/12/01 职场文书
工作建议书范文
2019/07/08 职场文书
MySQL慢查询优化解决问题
2022/03/17 MySQL