C# ASP.NET怎么在后台执行前台的js代码?

JavaScript016

C# ASP.NET怎么在后台执行前台的js代码?,第1张

前台:

 <script type="text/javascript">

        function fun1() {

            alert("a")

        }

 </script>

<body id="home">

  <form runat="server">

  <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />

  </form>

</body>

后台:

 protected void Button1_Click(object sender, EventArgs e)

    {

        Page.RegisterClientScriptBlock("aaa","<script>javascript:fun1()</script>") 

    }

 备注:此方法系统会提示已过时,不用管它,一切都正常使用。

这样做,不太现实。

首先,您的按钮是控件来的,随非您将DIv也加入runat="server"

,把DIV显示出来,不过,这种方式,一般都不行,因为,当你把DIV显示出来了,那button按钮就会刷新页面一次,DIV也不会显示出来了。

您可以对button按钮加入OnClientClick事件,写JS显示出来。

前台<div id="divTip">操作成功!1秒后自动隐藏<div>

js

function ShowTip()

{

document.getElementByID("divTip").style.left=450px//定位,可以使用其他js获取浏览器中心位置

document.getElementByID("divTip").style.top=450px//定位

document.getElementByID("divTip").style.display="block"

setTimeout(HideTip(),1000)

}

function HideTip()

{

document.getElementByID("divTip").style.display="none"

}

后台:

在方法成功最后加上

ScriptManager.RegisterStartupScript(this, this.GetType(), "", "ShowTip()", true)