c# - 强制复选框单击事件

标签 c# javascript asp.net

我有一个与 asp:checkboxlist 中每个复选框项的单击事件相关联的 JavaScript 函数。但是,有一个选项让用户可以动态地将新项目添加到列表中。我已经成功完成了这段代码,添加了该项目,并将 javascript 函数绑定(bind)到 onclick 事件。但是,当我将项目添加到列表中时,我需要从后面的代码运行一次 onclick 函数。如何从 C# 代码隐藏中简单地运行预先存在的 javascript 函数?

protected void btnAddLang_Click(object sender, EventArgs e)
{
        Healthline.ServiceRecords.DataHelper helper = new Healthline.ServiceRecords.DataHelper();
        Hashtable prms = new Hashtable();
        DataSet dsLangs = new DataSet();

        prms = new Hashtable();
        prms.Add("@LangName", txtOtherLanguages.Text);

        dsLangs = helper.RunSP("mySP", prms);

        if (dsLangs.Tables[0].Rows.Count > 0)
        {
            ListItem item = new ListItem();
            item.Value = dsLangs.Tables[0].Rows[0]["LanguageID"].ToString();
            item.Text = dsLangs.Tables[0].Rows[0]["Language"].ToString();
            chkTopLanguages.Items.Add(item);
        }

        foreach (ListItem listitem in chkTopLanguages.Items)
        {
            listitem.Attributes.Add("onclick", "GetLanguages()");
        }

        //here I need to force an immediate call to the javascript function GetLanguages()
    }

如果有帮助的话。如果我可以强制触发刚刚添加的复选框的 onclick 事件,而不是直接调用 javascript 函数,那应该也可以工作,因为 javascript 函数被称为复选框项的 onclick

最佳答案

我建议向函数添加一个参数,并传入控件。这样您就可以处理onclick,并且可以在页面回发时(即首次呈现动态复选框时)调用该函数。

关于c# - 强制复选框单击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15989023/

相关文章:

javascript - 浏览器 URL 的正则表达式

asp.net - 使用 xml 数据合并/填充 pdf 表单文件

javascript - 如何仅用js获取Google文档的名称?

asp.net - 如何防止 ASP.NET MVC 将日期从 UTC 转换为本地?

c# - 是否可以将字典从服务器发送到 c# 客户端?

c# - 如何在.NET 6中配置ILoggerFactory

javascript - 在文本区域高亮显示 SQL 代码

c# - 同一功能中的多个锁

c# - 将 IOrderedEnumerable<KeyValuePair<string, int>> 转换为 Dictionary<string, int>

javascript - Handlebars 数组长度 -1