我有以下声明:
btnApply.Attributes.Add("onclick", "alert('Must be a member to Use this Tool')");
有没有办法添加新行。我试过了,但它在文中显示了。另外,我可以添加一个链接来关闭警报并将用户带到另一个页面吗?
我如何用我的例子做到这一点?
当我添加\ n时,警报不会显示。
答案 0 :(得分:53)
答案 1 :(得分:14)
使用\\ n(需要两个斜杠)。
您会注意到,在执行此操作之前,警报甚至不会发布javascript错误。 \ n将无效,因为需要转义斜杠。
答案 2 :(得分:4)
您不能允许链接,但可以有换行符。
只需使用“\ n”代替换行符<br/>
。
答案 3 :(得分:1)
Javascript有一个特定的AlertDialog,当你调用alert('')并将整个主体视为文本时它会打开 - 就像我知道没有办法在显示的对话框中添加HTML一样。
我建议使用支持可自定义对话框的Javascript库或像Modal Box这样的模态框来获得您想要的行为(并且看起来会更好)
答案 4 :(得分:1)
您无法在javascript警报中使用标记。但是,您可以使用“\ n”
实现换行答案 5 :(得分:1)
警报是一个相当粗糙的工具(看起来也是如此)。或许现在是时候以更友好的方式来看待这个......
在您的页面上创建一个隐藏的消息div,而不是执行警报,用一些消息标记(如果您愿意,包括锚链接)填充它,并将其显示给用户。你可以添加各种漂亮的视觉技巧,包括淡入/淡出,居中,分层半透明背景等等。
编辑:jQuery对话框(正如其他人所提到的)是处理这个问题的好方法,大多数库都会有一些小部件或其他类似的东西。
答案 6 :(得分:1)
简短的回答:你做不到。 Javascript对话框是基本的。
你可以use VBScript's MsgBox method to create a custom dialog box但这只能在打开VBScript的Internet Explorer上运行。不是跨平台的;不推荐。
替代方法是在HTML中伪造它,其中包含大量Javascript库provide built-in functionality for。
答案 7 :(得分:1)
正如Gumbo所说,\n
正在100%工作。
但是不要忘记在文本和\n
答案 8 :(得分:0)
不,alert()
仅允许纯文本。所以\n
是一个换行符。
答案 9 :(得分:0)
也许你可以尝试confirm()而不是alert()。此解决方案不是链接,而是从按钮重定向。
如果将confirm包装到其他var并检查true / false,则可以执行2个操作。
var r=confirm("Do you wanna do");
if (r==true)
{
window.location.assign('register.html'); // this will be append to current url. For other, use http:// full url assignement.
}
else
{
window.location.assign(''); // cancel does nothing
}
答案 10 :(得分:0)
您可以使用 \n 代替 br 作为换行符,但请记住,如果您在 PHP echo 中使用 alert,那么 \n 将不适合你。您的完整警报将消失。为此,您必须使用 \n。