【发布时间】:2016-07-07 16:47:10
【问题描述】:
我有一个DropDownList,它允许用户更改网站的主题样式表。它会自动回发以将选择保存到我的数据库中。保存后,我想强制重新加载完整的页面(不刷新)。因此,样式表的链接被重建并且表单被重置。这可能吗?
我都试过了:
Response.Redirect(Request.Url.AbsoluteUri)
Response.Redirect(Request.RawUrl)
甚至尝试过 JavaScript:
window.location.reload();
window.opener.location.href = window.opener.location.href;
但这些似乎只是导致刷新。我寻求一种方式,就像我在地址栏中单击并按下[Enter]。
更新
这是一个没有彻底思考的常见情况。我试图通过iframe 执行这些操作,但父页面实际上是设置主题样式表的页面。我最终通过以下方式完成了这项工作:
If IsPostBack() Then
Dim sb As New StringBuilder()
sb.Append("<script type=""text/javascript"">")
sb.Append("window.top.location.reload();")
sb.Append("</script>")
ClientScript.RegisterStartupScript(Me.GetType(), "reload", sb.ToString())
End If
谢谢大家。
【问题讨论】:
-
为您的问题添加适当的标签。
-
@roryap
vb.net不是vb.net问题的合适标签? -
当然,但是您似乎在使用某些网络技术子集时遇到了问题? ASP.NET 可能吗?你现在有足够的代表知道这是如何工作的......我来到这里是因为我虽然这是一个一般的 vb.net 问题,而且我对 ASP.NET 了解不多,所以我很生气。这就是标签的目的;如果我看到了适当的标签,我会忽略这个问题。