如何编辑JavaScript警告框标题?

sub*_*ash 164 javascript alert

我正在使用C#.NET页面中的以下代码生成JavaScript警报:

Response.Write("<script language=JavaScript> alert('Hi select a valid date'); </script>");
Run Code Online (Sandbox Code Playgroud)

它显示一个警告框,标题标题为"来自网页的消息".

是否可以修改标题?

Pie*_*ten 248

叹气......不,你不能.

它具有安全/反网络钓鱼功能.

  • 虽然这是一个答案并且确实如此,但我已经确定您可以制作自己的警报版本,它会按照您的意愿行事.一个简单的模态并覆盖警报函数调用. (20认同)
  • @Josh你可以通过大量的努力来完成,但本机浏览器警报具有无法模拟的行为,例如冻结浏览器的其余部分,浮动在浏览器UI之上,以及作为单独的窗口运行可以拖出浏览器屏幕.创建令人信服的副本非常困难,特别是因为每个浏览器的警报看起来都不同. (6认同)
  • 这是一个安全/反网络钓鱼功能吗?我很好奇,不争论。 (2认同)
  • @Tim 想必,如果您的警报没有告诉用户它们源自哪个 URL,那么模拟另一个网站会更容易;不允许此自定义会强制 JavaScript 告诉用户这不是合法消息。 (2认同)

rah*_*hul 65

不,这是不可能的.您可以使用自定义JavaScript警告框.

使用jQuery找到了一个很好的

jQuery警报对话框(警报,确认和提示替换)

  • 顺便说一句,你无法更改标题的原因是为了防止恶意网站诱使用户认为警报来自他们的操作系统或其他内容. (19认同)
  • 谢谢你,但我对使用自定义警报框不感兴趣 (3认同)

Chr*_*tow 31

您可以在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>
Run Code Online (Sandbox Code Playgroud)

(虽然,我真的希望你不能.)

  • 我们都希望如此 (52认同)
  • 哇评论有更多的选票而不是答案......用于回答部分答案 (3认同)

小智 11

覆盖javascript window.alert()函数.

window.alert = function(title, message){
    var myElementToShow = document.getElementById("someElementId");
    myElementToShow.innerHTML = title + "</br>" + message; 
}
Run Code Online (Sandbox Code Playgroud)

有了这个,你可以创建自己的alert()功能.创建一个新的'酷'外观对话框(来自一些div元素).

测试使用chrome和webkit,不确定其他人.


Abe*_*tra 9

我发现这个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");
});
Run Code Online (Sandbox Code Playgroud)


kra*_*626 5

根据您的提问方式回答问题。

这实际上非常简单(至少在 Internet Explorer 中),我在 17.5 秒内完成。

如果您使用 cxfx 提供的自定义脚本:(将其放在您的 apsx 文件中)

<script language="VBScript">
Sub myAlert(title, content)
MsgBox content, 0, title 
End Sub 
</script>
Run Code Online (Sandbox Code Playgroud)

然后,您可以像调用常规警报一样调用它。只需将您的代码修改为以下内容。

Response.Write("<script language=JavaScript> myAlert('Message Header Here','Hi select a valid date'); </script>");
Run Code Online (Sandbox Code Playgroud)

希望对您或其他人有所帮助!

  • 两个downvote,一个upvote...但没有评论说明为什么我被downvoted...我认为这是一个有效的解决方案...至少在IE...:/ (3认同)
  • 适用于我的 IE,但不适用于 Firefox。同样感谢,快速而肮脏,但可能会证明有用。 (2认同)
  • @ Dath - PS 我不知道是否有办法在 Firefox 上运行 VBScript。我会创建另一个主题,比如如何在 firefox 中运行这个 vb 脚本并发布我上面给你的代码,看看是否有人能想出什么。 (2认同)
  • @Darth - 虽然我会使用 Rahul 的解决方案。只需使用一些 JQuery 真的很简单! (2认同)