ASP.NET后台中调用前台Javascript函数的几种方法

JavaScript021

ASP.NET后台中调用前台Javascript函数的几种方法,第1张

如果利用ajax来处理可能会好些。目前只能通过在后台对这些控件绑定前台的javascript函数来支持前台的处理函数。在网上找了找,发现了几种方法可以达到要求:第一种,感觉用起来最方便Button1.Attributes.Add("onclick", "return OnBtnClick()")OnBtnClick() 是一个前台方法,在此方法中直接在前台处理数据。可以替换成一般的脚本第二种,OnClientClick<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="OnClientClick()" OnClick="Button1_Click" /Button1_Click是在cs中(后台)处理的方法,而OnClientClick() 就是javascript(前台)的处理函数。第三种 用ClientScript类动态添加脚本用法如下:在想调用某个javascript脚本函数的地方添加代码,注意要保证MyFun已经在脚本文件中定义过了。ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "<scriptMyFun()</script")这个方法比Response.Write更方便一些,可以直接调用脚本文件中的自定义函数。第四种,ClientScript.RegisterStartupScript例子:StringBuilder sb = new StringBuilder()sb.Append("<script language='javascript'")sb.Append("Button2_onclick('" + serverPath + "')")sb.Append("</script")ClientScript.RegisterStartupScript(this.GetType(), "LoadPicScript", sb.ToString())第五种. 用Response.Write方法写入脚本比如在你单击按钮后,先操作数据库,完了后显示已经完成,可以在最后想调用的地方写上

在服务器端的后台代码Button_Click事件中调用一个JS写的方法

protected void btnShow_Click(object sender, EventArgs e)

{

//这是Button处理事件的第一句 调用客端的js函数

Page.RegisterStartupScript("showDiv", "<script>ShowDiv()</script>")//但是VS会提示这种方法已经过时了,但是还是可以使用的!如果比较介意可以使用以下几种替代

第一种:Page.RegisterClientScriptBlock("showDiv", "<script>ShowDiv()</script>")

第二种:ScriptManager.RegisterClientScriptBlock("这个比较麻烦,所以虽然比较新 我还是比较喜欢使用过时的 新的总是兼容后面 所以不用担心过时的问题")

第三种:ScriptManager.RegisterStartupScript("这个比较麻烦,所以虽然比较新 我还是比较喜欢使用过时的 新的总是兼容后面 所以不用担心过时的问题")

还有很多方法 选中上面的关任意键字 F1自己看VS帮助吧。。。。。。

//-------下面继续写你客户端要做的处理操作

}