0

C# 使用后面代码中的参数触发 js 函数。我有以下代码:

C#:

 ScriptManager.RegisterStartupScript(this, this.GetType(), "ScriptManager1", String.Format(@"ShowHideMessageBlock('{0}')", @"#successMsg"), true);

js:

function ShowHideMessageBlock(xid) {
    var c = xid;
    console.log(c);

    $(c).fadeIn('slow', function () {
        $(this).delay(5000).fadeOut('slow');
    });
}

当我打开控制台窗口时,我收到以下消息: Uncaught SyntaxError: Unexpected identifier

现在渲染的函数是:

<script type="text/javascript">
//<![CDATA[
ShowHideMessageBlock('#successMsg')Sys.Application.add_init(function() {
    $create(Sys.UI._UpdateProgress, {"associatedUpdatePanelId":null,"displayAfter":500,"dynamicLayout":true}, null, null, $get("updateProgress"));
});
//]]>
</script>

有人可以帮我解决这个问题。(它在过去有效)也许我已经改变/破坏了某些东西并且它不再起作用了。

4

1 回答 1

1

String.Format您需要做的就是在通话末尾添加一个分号。

ScriptManager.RegisterStartupScript(this, this.GetType(), "ScriptManager1", 
    String.Format(@"ShowHideMessageBlock('{0}');", @"#successMsg"), true);
于 2015-06-23T15:49:46.667 回答