【发布时间】:2018-08-23 04:48:16
【问题描述】:
我在 PHP 应用程序上看到了这个问题的一个很好的答案。解决此问题的方法是将 Java 脚本放在正文部分,因为单击警报框时会忽略 css 文件属性。我在我的代码后面的 aspx.vb 页面加载时有一个警报框的脚本,根据我发送的页面 [?id=1] 或 [?id=2] 显示或保持不可见。到达带有警告框的页面的链接发送 [?id=1]。如果它是 [?id=1],则代码中的 if 语句将隐藏该框。一旦一个人在页面上完成输入数据,他/她点击一个按钮,将用户发送到一个电子邮件页面,然后将用户重定向回带有警报框的页面并发送 [?id=2]。 If 语句页面显示 [?id=2] 并出现框,说明他们的电子邮件已通过。单击警告 [Okay] 按钮,字体会增加其大小。现在 If 语句和 Java 脚本在 Page Load 后面的代码中。我在哪里放置 if 语句(以及如何),以便重新加载不会忽略 css 文件属性。
这是放置在页面加载中的 If 语句。如何将它们放在 ASPX 页面上?
If Request.QueryString("id") = "2" Then
Response.Write("<script language=""javascript"">alert('Your Early Order information has been sent to the Purchasing Department');</script>")
Else
'Do nothing
End If
【问题讨论】:
-
我不确定 "css 文件属性" 是什么,但我认为您的问题可能与代码中的
Response.Write有关。如果您想在 .NET Web 表单项目中注入 javascript,您应该使用ClientScriptManager.RegisterStartupScript方法调用,请参阅 here。 -
Java !== JavaScript
-
正如@zgood 所写,您应该使用 ScriptManager。因为 Response.Write 将文本放在页面的最顶部,甚至在起始
<html>标记之上。所以这可能会导致奇怪的行为。
标签: javascript css asp.net