RegisterStartUpScript-发生回发时清除代码 - c#

我正在使用stringbuilder对象将一些javascript连接在一起,然后注册它。我的问题是,有没有一种方法可以使用客户端Javascript在回发时清除JavaScript。我发现当使用scriptmanager注册数组时,您必须清空所有动态数组,并且基本上我想对要动态添加到页面中的javascript代码做同样的事情? javascript有一个键(“ randomlists”),因此我们必须能够引用它!

ScriptManager.RegisterStartupScript(UpdatePanel_MyPublications, typeof(UpdatePanel), "randomlists", sb_javascript.ToString(), true);

让我解释一下。我正在注册的javascript包含一些变量,在这种情况下,某些其他数组是动态填充的。当前的错误是这些数组被附加到而不是重新实例化和重新填充(很多“重新”继续进行),并且如果我可以简单地清除并重新注册代码,所有问题将神奇地停止...

谢谢。

参考方案

在回发时,使用相同的名称重新注册脚本,但应使用不同的内容(即,不同的字符串生成器)。

在aspx页面上,添加一个名为“ Button1”的按钮,并使用以下aspx.cs作为概念证明。页面加载警报后单击按钮,然后显示“ 1”。再次单击该按钮,您将收到一个警报“ 2”,显示回发时,我能够重新定义变量。

aspx.cs页面:

protected void Page_Load(object sender, EventArgs e)
    {
        Button1.Attributes.Add("onclick", "alert(test);");
        var sb_javascript = new StringBuilder();
        var sb_javascriptPostback = new StringBuilder();
        sb_javascript.Append("var test='1';");
        sb_javascriptPostback.Append("var test='2';");
        if ((Page.IsPostBack))
        {
            ScriptManager.RegisterStartupScript(UpdatePanel_MyPublications, typeof(UpdatePanel), "randomlists", sb_javascriptPostback.ToString(),
                                                true);
        }
        else
        {
            ScriptManager.RegisterStartupScript(UpdatePanel_MyPublications, typeof (UpdatePanel), "randomlists",
                                                sb_javascript.ToString(),
                                                true);
        }

    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        Response.Write("PostBack");
    }
}

如果这不起作用,请发布您的代码,以便我们查看您的特定情况。

Javascript-从当前网址中删除查询字符串 - javascript

单击提交按钮后,我需要从网址中删除查询字符串值。我可以用jQuery做到这一点吗?当前网址:siteUrl/page.php?key=value 页面提交后:siteUrl/page.php 实际上,我已经从另一个带有查询字符串的页面着陆到当前页面。我需要在页面首次加载时查询字符串值以预填充一些详细信息。但是,一旦我提交了表格,我就需要删除查询字符串值。我已…

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …

JavaScript中的字符串评估函数 - javascript

            JavaScript中是否有任何内置函数,例如Python中的eval内置函数?注意:eval函数将方程式作为字符串并返回结果。例如,假设变量x为2,则eval("2x+5")返回9。 参考方案 是的,JavaScript中也有eval函数。此外,该声明应有效用于评估,即eval("2*x+5"…

如何在JQuery中操作JSONArray - javascript

我有一个php函数,它以JSON返回此代码{"0":{"title":"Dans l\u2019appartement"},"1":{"title":"A l\u2019a\u00e9roport - D\u00e9part de B\u00e9at…

使用C#执行JavaScript页面 - javascript

我正在尝试使用C#抓取一个网站。在此过程中的某个时候,网站返回了我需要执行的JavaScript页面,以便它将生成一些参数,然后使用所生成的参数作为查询变量来发布请求。这是JavaScript文件https://jsfiddle.net/7aw5vr59/浏览器生成的结果文件如下所示:<imimxxxyyy id="ActiveX"…