C#调用JS

今天用到 Page.RegisterClientScriptBlock(("aa", "<script type=\"text/javascript\">showTab('tz')</script>");

却发现一点反应都没有,查了些资料才想起来 前台没有runat=“server” 的form元素做承载,我这个羞愧啊~~ 哈哈

今天总结一下c#调用JS的几种常用方法

1.Page.Resopone.wrtie ("<script> js语句</script>");

这种适用于方法体比较简单的,alert之类的

2.Page.RegisterClientScriptBlock/ Page.RegisterStartupScript

这种方法适合方法体复杂一些的,但是前台aspx中必须有runat=“server” 的form元素做承载

1、调用js文件,举例:<script src="../Script/PublicScript.js" type="text/javascript"></script>

2、直接写,举例:
<script language="javascript">
脚本内容...
</script>
然后调用

3、后台代码中:
(1)、可以加在空间的属性中,例如一个按钮:
button1.Attributes.Add("事件名","js内容");
(2)、在代码中写,例如:ClientScript.RegisterStartupScript(GetType(), "", "<script>js内容</script>"); 这种方法适用大部分控件。

把closebox()函数写在一个js文件内如 test.js

this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script src=test.js></script> CloseBox();");

先引用js文件,再调用函数,

例子:

<head runat="server">
    <title></title>
    <script language="javascript" type="text/javascript">

        function CloseBox() {
            window.alert("aaaaaaaaaaaaaaa");
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
    </div>
    </form>
</body>
</html>

this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "closeFunction", "CloseBox();", true);

posted on 2010-07-20 13:32  米高佐敦  阅读(735)  评论(0编辑  收藏  举报