如何在提交ASP.NET表单后执行Javascript?
例如,如果我在提交页面后点击了提交按钮,那么我想显示我隐藏在页面上的DIV。
答案 0 :(得分:2)
由于您使用完整的回发,因此您可以轻松地从代码隐藏中包含javascript。
将JavaScript代码放在占位符
中<asp:Placeholder ID="javascriptPlaceholder" runat="server" Visible="false">
<%-- Your Javascript here -->
</asp:Placeholder>
我假设在你的OnClick处理方法中,你获得了表单的值并用它做了一些其他事情。在此方法中,您可以设置占位符的Visibile属性:
this.javascriptPlaceholder.Visible = true;
答案 1 :(得分:1)
也许我不理解您的问题,但如果您要回到服务器并进行一些处理,为什么还需要javascript?只需在有问题的div中添加一个runat =“server”,并在处理后使其可见。
<div id="YourDiv" runat="server" Visible="false" >
...Whatever is here
</div>
代码背后:
protected void Button_Click(object sender, EventArgs e)
{
/*
Your Logic Here
*/
YourDiv.Visible = true;
}
答案 2 :(得分:1)
如果您只想将隐藏的div转换为可见的div,那么可以在服务器端完成。在aspx中,给div一个id和一个runat =“server”。然后在服务器端,将其显示样式属性设置为“阻止”。例如,假设div定义为
<div id="divTest" runat="server" style="display:none;">
This is a div test
</div>
然后在提交按钮的发布事件中,您可以设置其样式,如下所示:
divTest.Style["display"] = "block";
如果您只想在帖子之后发出脚本,那么使用ScriptManager可以使用:
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "ScriptRegisterTest", "alert('Testing');", true);