0

我添加了一个 Web 用户控件,并在客户端的 jquery 中创建了一个名为“ButtonClick”的 Web 用户控件上的函数。并在循环中使用 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++;
        }
    }
4

1 回答 1

1

它只触发一次的原因是因为您正在复制它们ButtonClick在您的RegisterStartupScript呼叫中的键。

文档中:

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


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

ScriptManager.RegisterStartupScript(Page, Page.GetType(), "ButtonClick" + i.toString(),"ButtonClick('btn" + q[i].Weekday + "','" + q[i].Weekday + "');", true);
于 2012-11-27T08:44:51.990 回答