CSharp: window.Confirm customer rewrite MessageBox
js:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 | // JavaScript Document /* 參考資源: https://developer.mozilla.org/en-US/docs/Web/API/Window/alert https://developer.mozilla.org/en-US/docs/Web/API/Window/confirm https://reactkungfu.com/2015/08/beautiful-confirm-window-with-react/ https://www.jquery-az.com/javascript-confirm-alert-box-fancy-and-simple-with-5-online-demos/ https://css-tricks.com/replace-javascript-dialogs-html-dialog-element/ https://www.aspsnippets.com/Articles/Server-Side-Code-Behind-Yes-No-Confirmation-Message-Box-in-ASPNet.aspx http://fabien-d.github.io/alertify.js/ https://sweetalert.js.org/ https://github.com/t4t5/sweetalert https://social.msdn.microsoft.com/Forums/en-US/e19c2bda-d46b-4c47-913d-02673fa76689/confirm-message-box-yes-or-no-in-aspnet20?forum=asphtmlcssjavascript self.location.href;//当前页面打开URL页面 window.location.href;//当前页面打开URL页面 this.location.href;//当前页面打开URL页面 location.href;// 当前页面打开URL页面 parent.location.href;//在父页面打开新页面 top.location.href;//在顶层页面打开新页面 還有其它中文資源 */ var alertList = []; /** * 函数说明 * @function function(text,title,btnOkVale,btnCancelVale,golink) 重置提示框 * @param text{String} 要提示的文本内容 * @param title{String} 提示框的标题 * @param btnOkVale 按钮名称 * @param btnCancelVale 按钮名称 * @param golink 要打开链接地址 * @version 4.0 * @edit geovindu * @date 20230817 20230902 * @eg confirm("程序结束!!!","网页提示","關閉","取消") * @eg confirm("程序结束!!!","网页提示","關閉","取消","http://www.dusystem.com") */ window.confirm= function (text, title = "警告" , btnOkVale= "確定" ,btnCancelVale= "取消" , golink,callback) { var alertMain=document.createElement( 'div' ); var alertBox = document.createElement( 'div' ); var alertTitle = document.createElement( 'h4' ); var alertText = document.createElement( 'div' ); var alertOkBtn = document.createElement( 'button' ); var alertbtnCancelVale = document.createElement( 'button' ); var alertinput=document.createElement( "INPUT" ); alertinput.type = "hidden" ; alertinput.name = "confirmValue" ; alertinput.id= "confirmValue" ; alertinput.className= "confirmValue" ; alertinput.value= "確定" ; alertMain.id= "mainMessageBody" ; //alertMain.style.width="100%"; //alertMain.style.height = "auto"; //alertMain.style.display="none"; //alertMain.style.position="fixed"; //alertMain.style.background="rgba(0,0,0,0)"; //alertMain.style.top="0px"; //alertMain.style.left="0px"; //alertMain.style.zIndex="800"; alertMain.className= "mainMessageBody" ; //alertMain.style.textAlign="center"; //alert弹窗整体样式 //alertBox.style.width = "50%"; //alertBox.style.height = "465px";//fit-content //alertBox.style.position = "relative";//fixed //alertBox.style.marginLeft="auto"; //alertBox.style.marginRight="auto"; //alertBox.style.zIndex = "199"; //alertBox.style.boxSizing="border-box"; //alertBox.style.left = "50%"; //alertBox.style.top = "50%"; //alertBox.style.transform = "translate(-50% ,-50%)"; //alertBox.style.backgroundColor = "#fff"; //alertBox.style.padding = "10px"; //alertBox.style.border = "2px solid #946cac"; //alertBox.style.borderRadius = "5px"; //alertBox.style.fontFamily = "'Courier New', Courier, monospace"; //alertBox.style.margin="-167px 0 0 -226px"; //alertBox.style.padding="0 15px 20px 15px"; //alertBox.style.border="2px solid #946cac"; alertBox.id= "messageBody" ; alertBox.className= "messageBody" ; //alertBox.style.display = "none"; //alert 标题样式 //alertTitle.style.padding = "0"; //alertTitle.style.margin = "0"; //alertTitle.style.fontWeight = "600"; //alertTitle.style.textAlign="center"; //alertTitle.style.borderBottom="1px solid #cda6ae"; alertTitle.id= "Messagehead" ; alertTitle.className= "Messagehead" ; alertTitle.innerText = title; // alertTitle.innerText = "挽月阁"; //内容文本样式 //alertText.style.margin = "10px 0"; //alertText.style.lineHeight = "1.35"; alertText.id= "MessageContent" ; alertText.className= "MessageContent" ; //alertText.style.textAlign="center"; //alertText.style.code="#946cac"; alertText.innerText = text; // alertText.innerText = "落霞与孤鹜齐飞,秋水共长天一色"; //ok按钮 //alertOkBtn.style.display = "block"; //alertOkBtn.style.width = "60px"; //alertOkBtn.style.height = "30px"; //alertOkBtn.style.lineHeight = "27px"; //alertOkBtn.style.padding = "2px"; //alertOkBtn.style.marginLeft="auto"; //alertOkBtn.style.marginRight="auto"; //alertOkBtn.style.float = "right"; //alertOkBtn.style.backgroundColor = "#946cac"; //alertOkBtn.style.border = "1px solid transparent"; //alertOkBtn.style.borderRadius = "2px"; //alertOkBtn.style.backgroundClip = "content-box"; // alertOkBtn.style.transform = "scale(0.8)"; //alertOkBtn.style.fontWeight = "600"; //alertOkBtn.style.fontFamily = "'Courier New', Courier, monospace"; //alertOkBtn.style.textAlign="center"; //alertOkBtn.style.fontSize = "15px"; //alertOkBtn.style.color="#fff"; alertOkBtn.id= "MessagebtnConfirmOk" ; alertOkBtn.className= "MessagebtnConfirmOk" ; alertOkBtn.innerText = btnOkVale; alertbtnCancelVale.id= "MessagebtnCancel" ; alertbtnCancelVale.className= "MessagebtnCancel" ; alertbtnCancelVale.innerText = btnCancelVale; //添加ok事件 alertOkBtn.addEventListener( "click" , function () { if (golink!= null ) { alertinput.value= "確定" ; $(window).attr( 'location' ,golink); } else { alertinput.value= "確定" ; console.log( "確定" ); __doPostBack( 'UserConfirmationPostBack' , 'true' ) //asp.net C# 给服务器传递参数 //alert("Ok is clicked"); } alertList.shift(); alertMain.remove(); }); //添加取消事件 alertbtnCancelVale.addEventListener( "click" , function () { if (golink!= null ) { alertinput.value= "取消" ; $(window).attr( 'location' ,golink); } else { alertinput.value= "取消" ; console.log( "取消" ); __doPostBack( 'UserConfirmationPostBack' , 'false' ) //asp.net C# 给服务器传递参数 //alert("Cancel is clicked"); } alertList.shift(); alertMain.remove(); }); //無效 /*alertOkBtn.click=function () { alert("Ok is clicked"); }; alertbtnCancelVale.click=function () { alert("Cancel is clicked"); };*/ //添加弹窗到弹窗数组alertBox alertList.push(alertMain); //向页面中添加元素 注意节点父子关系 const parent=document.body.appendChild(alertMain); const child=parent.appendChild(alertBox); child.appendChild(alertTitle); child.appendChild(alertText); child.appendChild(alertOkBtn); child.appendChild(alertbtnCancelVale); child.appendChild(alertinput); }; /* 定义计时器,判断弹窗数组是否为空 确保弹窗数组中的第一个弹窗一直是显示状态 当数组为空的时候清除计时器 */ var yue = setInterval( function () { if (alertList.length != 0) { alertList[0].style.display = "block" ; } else { clearInterval(yue); } }, 200); |
css:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | #mainMessageBody{ width : 100% ; height : 100% ; background : rgba( 0 , 0 , 0 , 0 ); position : fixed ; top : 0 ; left : 0 ; z-index : 800 ; } #messageBody{ width : 468px ; height : auto ; padding : 0px 15px 20px 15px ; box-sizing: border-box; background : #fff ; border-radius: 8px ; position : relative ; border : 1px solid #946cac ; top : 50% ; margin : auto ; } #Messagehead{ width : 100% ; height : 45px ; border-bottom : 2px solid #946cac ; font-size : 16px ; color : #333 ; line-height : 45px ; text-align : center ; } #MessageContent{ width : 100% ; height : auto ; overflow : hidden ; padding : 25px 40px 35px ; text-align : center ; font-size : 16px ; color : #333 ; box-sizing: border-box; line-height : 28px ; } #MessagebtnOk{ display : block ; width : 100px ; height : 34px ; line-height : 34px ; background-color : #946cac ; cursor : pointer ; font-size : 14px ; color : #fff ; border-radius: 4px ; border : 1px solid transparent ; margin : 0 auto ; text-align : center } .MessagebtnConfirmOk{ display : inline- block ; width : 100px ; height : 34px ; line-height : 34px ; background-color : #946cac ; cursor : pointer ; font-size : 14px ; color : #fff ; border-radius: 4px ; border : 1px solid transparent ; text-align : center ; margin-left : 15% ; margin-right : 10% ; } .MessagebtnCancel{ display : inline- block ; width : 100px ; height : 34px ; line-height : 34px ; background-color : #946cac ; cursor : pointer ; font-size : 14px ; color : #fff ; border-radius: 4px ; border : 1px solid transparent ; text-align : center ; border : 1px solid transparent ; } .ToastBox{ width : 452px ; height : auto ; padding : 15px 20px ; text-align : center ; background : rgba( 0 , 0 , 0 ,. 5 ); color : #fff ; font-size : 16px ; border-radius: 8px ; line-height : 24px ; position : relative ; top : 50% ; left : 50% ; margin : 0px 0px 0px -226px ; } @media only screen and ( max-width : 767px ) { #messageBody{ width : 96% ; height : auto ; } } @media only screen and ( max-width : 420px ) { .MessagebtnOk{ display : inline- block ; width : 100px ; height : 34px ; line-height : 34px ; background-color : #946cac ; cursor : pointer ; font-size : 14px ; color : #fff ; border-radius: 4px ; border : 1px solid transparent ; text-align : center ; margin-left : 17% ; margin-right : 10% ; } } @media only screen and ( max-width : 390px ) { .MessagebtnOk{ display : inline- block ; width : 100px ; height : 34px ; line-height : 34px ; background-color : #946cac ; cursor : pointer ; font-size : 14px ; color : #fff ; border-radius: 4px ; border : 1px solid transparent ; text-align : center ; margin-left : 16% ; margin-right : 10% ; } } @media only screen and ( max-width : 375px ) { .MessagebtnOk{ display : inline- block ; width : 100px ; height : 34px ; line-height : 34px ; background-color : #946cac ; cursor : pointer ; font-size : 14px ; color : #fff ; border-radius: 4px ; border : 1px solid transparent ; text-align : center ; margin-left : 14.5% ; margin-right : 10% ; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | <%@ Page Language= "C#" AutoEventWireup= "true" CodeBehind= "WebForm16.aspx.cs" Inherits= "WebAppPdfDemo.WebForm16" %> <!doctype html> <html> <head runat= "server" > <meta charset= "utf-8" > <meta name= "viewport" content= "width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0,user-scalable=no" > <meta http-equiv= "X-UA-Compatible" content= "ie=edge" > <title>成长之旅 geovindu,涂聚文,Geovin Du</title> <meta name= "Description" content= "geovindu,涂聚文,Geovin Du" /> <meta name= "Keywords" content= "geovindu,涂聚文,Geovin Du" /> <meta name= "author" content= "geovindu,涂聚文,Geovin Du" /> <link rel= "stylesheet" href= "../bootstrap/4.6.2/css/bootstrap.min.css" > <script src= "../js/jquery-3.6.0.js" type= "text/javascript" ></script> <script src= "../popperjs/4.1/popper.min.js" type= "text/javascript" ></script> <script src= "../bootstrap/4.6.2/js/bootstrap.min.js" type= "text/javascript" ></script> <script src= "../ajax/libs/modernizr/2.8.3/modernizr.min.js" type= "text/javascript" ></script> <script type= "text/javascript" src= "../assets/js/DuSize.js" ></script> <script type= "text/javascript" src= "js/Message/alert4.js" ></script> <script type= "text/javascript" src= "js/Message/confirm.js" ></script> <script type = "text/javascript" > /* function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (theForm.onsubmit() != false)) { theForm.__EVENTTARGET.value = eventTarget; theForm.__EVENTARGUMENT.value = eventArgument; theForm.submit(); } } */ </script> <script type= "text/javascript" > function okfun() { confirm( '哈哈哈!!!看,没有标题網地址,我看到你了~_~' , '警告' , '確定' , '關閉' ); } //不带网址 //alert("哈哈哈!!!看,没有标题網地址,看到你了~_~",'警告','確定','取消',http://www.dusystem.com/'); //带网址 </script> </head> <body> <form id= "form1" runat= "server" > <asp:ScriptManager ID= "ScriptManager1" runat= "server" > </asp:ScriptManager> <!--- <div id= "mainMessageBody" class = "mainMessageBody" style= "display: block;" ><div id= "messageBody" class = "messageBody" ><h4 id= "Messagehead" class = "Messagehead" >警告</h4><div id= "MessageContent" class = "MessageContent" >哈哈哈!!!看,没有标题網地址,看到你了~_~</div><button id= "MessagebtnConfirmOk" class = "MessagebtnConfirmOk" >關閉</button><button id= "MessagebtnCancel" class = "MessagebtnCancel" >Canle</button></div></div> --> <asp:Button ID= "Button1" runat= "server" Text= "Button" onclick= "Button1_Click" OnClientClick= "" /> </form> </body> </html> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 | using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Text; //https://social.msdn.microsoft.com/Forums/en-US/e19c2bda-d46b-4c47-913d-02673fa76689/confirm-message-box-yes-or-no-in-aspnet20?forum=asphtmlcssjavascript //https://www.aspsnippets.com/Articles/How-to-find-the-control-that-caused-PostBack-in-ASP.Net.aspx namespace WebAppPdfDemo { /// <summary> /// /// </summary> public partial class WebForm16 : System.Web.UI.Page { #region Private Properties bool _isConfirmNeeded = true ; string _confirmMessage = string .Empty; #endregion #region Public Properties /// <summary> /// Gets or sets a value indicating whether this instance is confirm needed. /// </summary> /// <value> /// <c>true</c> if this instance is confirm needed; otherwise, <c>false</c>. /// </value> public bool IsConfirmNeeded { get { return _isConfirmNeeded; } set { _isConfirmNeeded = value; } } /// <summary> /// Gets or sets the confirm message. /// </summary> /// <value>The confirm message.</value> public string ConfirmMessage { get { return _confirmMessage; } set { _confirmMessage = value; } } #endregion /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Page_Load( object sender, EventArgs e) { //IsConfirmNeeded = true; //ConfirmMessage = "Do you want to proceed ?"; //// Insure that the __doPostBack() JavaScript is added to the page... //ClientScript.GetPostBackEventReference(this, string.Empty); //if (IsPostBack) //{ // string eventTarget = Request["__EVENTTARGET"] ?? string.Empty; // string eventArgument = Request["__EVENTARGUMENT"] ?? string.Empty; // switch (eventTarget) // { // case "UserConfirmationPostBack": // if (Convert.ToBoolean(eventArgument)) // { // //SaveDataInDB(); // Response.Write("sava"); // } // else // { // Response.Write("canlce"); // // User said NOT to do it... // } // break; // } //} //Set Properties IsConfirmNeeded = true ; ConfirmMessage = "你真的要操作吗?" ; // Insure that the __doPostBack() JavaScript is added to the page... ClientScript.GetPostBackEventReference( this , string .Empty); if (IsPostBack) { string eventTarget = Request.Form[ "__EVENTTARGET" ] ?? string .Empty; string eventArgument = Request.Form[ "__EVENTARGUMENT" ] ?? string .Empty; string sss = Request[ "__EVENTARGUMENT" ] ?? string .Empty; ; string confirmValue = Request.Form[ "confirmValue" ]; Response.Write(confirmValue); switch (eventTarget) { case "UserConfirmationPostBack" : if (Convert.ToBoolean(eventArgument)) //Convert.ToBoolean() { Response.Write( "sava" ); // User said to go ahead and do it... } else { Response.Write( "canlce" ); // User said NOT to do it... } break ; } } } /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Button1_Click( object sender, EventArgs e) { if (IsConfirmNeeded) { StringBuilder javaScript = new StringBuilder(); string scriptKey = "ConfirmationScript" ; javaScript.AppendFormat( "var userConfirmation = confirm('{0},', '警告', '確定', '關閉');" , ConfirmMessage); // // Un-comment to only PostBack if user answers OK... javaScript.Append( "if(userConfirmation == true )\n" ); javaScript.Append( " __doPostBack('UserConfirmationPostBack', userConfirmation);\n" ); Page.ClientScript.RegisterStartupScript(GetType(), scriptKey, javaScript.ToString(), true ); //this.Page.ClientScript.RegisterStartupScript(this.GetType(), "message", "confirm('哈哈哈!!!看,没有标题網地址,我看到你了~_~', '警告', '確定', '關閉')", true); string confirmValue = Request.Form[ "confirmValue" ]; //Response.Write(confirmValue); } } } } |
哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)生存.---Geovin Du(涂聚文)
标签:
Message Box
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2016-09-02 css: 照片有如层叠效果