我有一个与 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/