如何编辑JavaScript警告框标题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何编辑JavaScript警告框标题?相关的知识,希望对你有一定的参考价值。
我正在使用C#.NET页面中的以下代码生成javascript警报:
Response.Write("<script language=JavaScript> alert('Hi select a valid date'); </script>");
它显示一个警告框,标题标题为“来自网页的消息”。
是否可以修改标题?
不,你不能。
这是一种安全/反网络钓鱼功能。
当你启动或只是加入基于web应用程序的项目时,界面的设计可能会很好。否则应该改变。为了Web 2.0应用程序,您将使用动态内容,许多效果和其他东西。所有这些都很好,但没有人想过设置JavaScript警报并确认框。这是他们的方式,...完全动态,JS和CSS驱动创建简单的html文件
<html>
<head>
<title>jsConfirmSyle</title>
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<script type="text/javascript" src="jsConfirmStyle.js"></script>
<script type="text/javascript">
function confirmation() {
var answer = confirm("Wanna visit google?")
if (answer){
window.location = "http://www.google.com/";
}
}
</script>
<style type="text/css">
body {
background-color: white;
font-family: sans-serif;
}
#jsconfirm {
border-color: #c0c0c0;
border-width: 2px 4px 4px 2px;
left: 0;
margin: 0;
padding: 0;
position: absolute;
top: -1000px;
z-index: 100;
}
#jsconfirm table {
background-color: #fff;
border: 2px groove #c0c0c0;
height: 150px;
width: 300px;
}
#jsconfirmtitle {
background-color: #B0B0B0;
font-weight: bold;
height: 20px;
text-align: center;
}
#jsconfirmbuttons {
height: 50px;
text-align: center;
}
#jsconfirmbuttons input {
background-color: #E9E9CF;
color: #000000;
font-weight: bold;
width: 125px;
height: 33px;
padding-left: 20px;
}
#jsconfirmleft{
background-image: url(left.png);
}
#jsconfirmright{
background-image: url(right.png);
}
< /style>
</head>
<body>
<p><br />
<a href="#"
onclick="javascript:showConfirm('Please confirm','Are you really really sure to visit google?','Yes','http://www.google.com','No','#')">JsConfirmStyled</a></p>
<p><a href="#" onclick="confirmation()">standard</a></p>
</body>
</html>
然后创建简单的js文件名jsConfirmStyle.js。这是简单的js代码
ie5=(document.getElementById&&document.all&&document.styleSheets)?1:0;
nn6=(document.getElementById&&!document.all)?1:0;
xConfirmStart=800;
yConfirmStart=100;
if(ie5||nn6) {
if(ie5) cs=2,th=30;
else cs=0,th=20;
document.write(
"<div id='jsconfirm'>"+
"<table>"+
"<tr><td id='jsconfirmtitle'></td></tr>"+
"<tr><td id='jsconfirmcontent'></td></tr>"+
"<tr><td id='jsconfirmbuttons'>"+
"<input id='jsconfirmleft' type='button' value='' onclick='leftJsConfirm()' onfocus='if(this.blur)this.blur()'>"+
" "+
"<input id='jsconfirmright' type='button' value='' onclick='rightJsConfirm()' onfocus='if(this.blur)this.blur()'>"+
"</td></tr>"+
"</table>"+
"</div>"
);
}
document.write("<div id='jsconfirmfade'></div>");
function leftJsConfirm() {
document.getElementById('jsconfirm').style.top=-1000;
document.location.href=leftJsConfirmUri;
}
function rightJsConfirm() {
document.getElementById('jsconfirm').style.top=-1000;
document.location.href=rightJsConfirmUri;
}
function confirmAlternative() {
if(confirm("Scipt requieres a better browser!")) document.location.href="http://www.mozilla.org";
}
leftJsConfirmUri = '';
rightJsConfirmUri = '';
/**
* Show the message/confirm box
*/
function showConfirm(confirmtitle,confirmcontent,confirmlefttext,confirmlefturi,confirmrighttext,con firmrighturi) {
document.getElementById("jsconfirmtitle").innerHTML=confirmtitle;
document.getElementById("jsconfirmcontent").innerHTML=confirmcontent;
document.getElementById("jsconfirmleft").value=confirmlefttext;
document.getElementById("jsconfirmright").value=confirmrighttext;
leftJsConfirmUri=confirmlefturi;
rightJsConfirmUri=confirmrighturi;
xConfirm=xConfirmStart, yConfirm=yConfirmStart;
if(ie5) {
document.getElementById("jsconfirm").style.left='25%';
document.getElementById("jsconfirm").style.top='35%';
}
else if(nn6) {
document.getElementById("jsconfirm").style.top='25%';
document.getElementById("jsconfirm").style.left='35%';
}
else confirmAlternative();
}
You can download full Source code from here
当我想要更改默认确认框的方框标题和按钮标题时,我遇到了类似的问题。我已经去了Jquery Ui对话框插件http://jqueryui.com/dialog/#modal-confirmation
当我有以下内容时:
function testConfirm() {
if (confirm("Are you sure you want to delete?")) {
//some stuff
}
}
我已将其更改为:
function testConfirm() {
var $dialog = $('<div></div>')
.html("Are you sure you want to delete?")
.dialog({
resizable: false,
title: "Confirm Deletion",
modal: true,
buttons: {
Cancel: function() {
$(this).dialog("close");
},
"Delete": function() {
//some stuff
$(this).dialog("close");
}
}
});
$dialog.dialog('open');
}
可以看到在这里工作https://jsfiddle.net/5aua4wss/2/
希望有所帮助。
不,这是不可能的。您可以使用自定义JavaScript警告框。
使用jQuery找到了一个很好的
jQuery Alert Dialogs (Alert, Confirm, & Prompt Replacements)
您可以在IE中执行此操作:
<script language="VBScript">
Sub myAlert(title, content)
MsgBox content, 0, title
End Sub
</script>
<script type="text/javascript">
myAlert("My custom title", "Some content");
</script>
(虽然,我真的希望你不能。)
覆盖javascript window.alert()函数。
window.alert = function(title, message){
var myElementToShow = document.getElementById("someElementId");
myElementToShow.innerHTML = title + "</br>" + message;
}
有了这个,你可以创建自己的alert()
功能。创建一个新的'酷'外观对话框(来自一些div元素)。
测试使用chrome和webkit,不确定其他人。
我发现这个Sweetalert自定义标题框javascript。
例如
swal({
title: "Are you sure?",
text: "You will not be able to recover this imaginary file!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "Yes, delete it!",
closeOnConfirm: false
},
function(){
swal("Deleted!", "Your imaginary file has been deleted.", "success");
});
这里有一个非常好的'hack' - https://stackoverflow.com/a/14565029,你使用iframe和空src生成警报/确认消息 - 它在android上不起作用(出于安全考虑) - 但可能适合你的场景。
根据您的要求回答问题。
这实际上非常简单(至少在Internet Explorer中),我在17.5秒内做到了。
如果您使用cxfx提供的自定义脚本:(将其放在您的apsx文件中)
<script language="VBScript">
Sub myAlert(title, content)
MsgBox content, 0, title
End Sub
</script>
然后,您可以像调用常规警报一样调用它。只需将代码修改为以下内容即可。
Response.Write("<script language=JavaScript> myAlert('Message Header Here','Hi select a valid date'); </script>");
希望能帮助你或其他人!
以上是关于如何编辑JavaScript警告框标题?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 javascript 查找 Chrome 警告消息框