在C#中使用scriptmanager调用jquery方法

时间:2012-11-27 08:10:49

标签: jquery scriptmanager

我添加了一个Web用户控件,并在Web用户控件上的客户端jquery中创建了一个名为“ButtonClick”的函数。并在循环中使用ScriptManager.RegisterStartupScript从代码中调用此方法。 但它只运行一次,而它应该运行循环时间。

请帮帮我...... 代码示例在这里

  var q = (from p in obj.Pinny_ShowOffer where (p.OfferID == objOffer.OfferID) select p).ToList();
    if (q.Count > 0)
    {
        Rdbtnoffersetup.Items.FindByValue("2").Selected = true;
        ScriptManager.RegisterStartupScript(Page, Page.GetType(), "ShowDIv", "ShowDiv(2,2);", true);
        Int32 k = 0;
        for (Int32 i = 0; i < q.Count; i++)
        {
            ScriptManager.RegisterStartupScript(Page, Page.GetType(), "ButtonClick",
                                                                        "ButtonClick('btn" + q[i].Weekday + "','" + q[i].Weekday + "');", true);
            if (q[i].StartTime == "07:00" && q[i].EndTime == "11:00")
            {
                ScriptManager.RegisterStartupScript(Page, Page.GetType(), "select value", "SelectValueoFDropDown('drpStart" + q[i].Weekday + k + "','1');", true);
            }
            k++;
        }
    }

1 个答案:

答案 0 :(得分:1)

它只触发一次的原因是因为您在ButtonClick来电中复制了RegisterStartupScript键。

来自documentation

  

客户端脚本由其密钥及其类型唯一标识。   具有相同密钥和类型的脚本被视为重复。只有一个   具有给定类型和密钥对的脚本可以在页面中注册。   尝试注册已注册的脚本不会   创建脚本的副本。


你可以尝试这样的东西来保持它的独特性:

ScriptManager.RegisterStartupScript(Page, Page.GetType(), "ButtonClick" + i.toString(),"ButtonClick('btn" + q[i].Weekday + "','" + q[i].Weekday + "');", true);