2010-07-01 95 views
1

我在一个updatepanel里面有一个Asp.Net控件,它在一个模式弹出框内。 我不会在控制代码中向客户端注册写入javascript代码。从服务器端注册javascript代码

这是我的代码:

Dim output As String = .. javascript code 
Page.ClientScript.RegisterClientScriptBlock(Me.GetType(), "frmulaMatrix", output, True) 

这是我第二次thinf但不工作

Page.RegisterClientScriptBlock("SCRIPTNAME", "<script language='javascript'>" + output+"</script>") 
+0

是的一些功能 – user368038 2010-07-01 14:38:38

回答

3

你必须努力的部分帖子中这样做了。

你应该这样做。

ScriptManager scriptManager = ScriptManager.GetCurrent(Page); 
    if (scriptManager != null && scriptManager.IsInAsyncPostBack) 
    { 
    //if a MS AJAX request, use the Scriptmanager class 
    ScriptManager.RegisterStartupScript(Page, Page.GetType(), scriptKey, script, true); 
    } 
    else 
    { 
    //if a standard postback, use the standard ClientScript method 
    Page.ClientScript.RegisterStartupScript(Page.GetType(), scriptKey, script, true); 
    } 
1

第二种方法已被弃用。您在页面生命周期中的哪个位置调用此代码?

0

尝试不带脚本标记。我相信脚本管理员补充说,自动

script = @"function onBeginRequest myJavascript{ 
//bla bla 
         } 


       this.Page.ClientScript.RegisterStartupScript(this.GetType(), "frmulaMatrix", script, true); 
+0

你知道你写了什么吗?我认为你没有正确地格式化你的答案 – IsmailS 2010-07-01 14:56:51

相关问题