对于之前已经完成此操作的人来说,这应该是直截了当的,如果之前已经回答过,我会道歉,但如果是的话,我似乎无法找到它。
我在c#vb.net中构建解决方案,在添加CheckBoxList项目时,我试图将相同的类应用于每个项目。这将使我能够根据最终用户检查的内容操纵另一个字段。
我已经尝试了以下2个代码段。从我所读过的内容来看,它们都应该有效,但是当我在dom explorer中检查过它时,它还没有添加这个类:/
摘录1
private void GetProjectManagers()
{
if (!IsPostBack)
using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["tablename"].ConnectionString))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "SELECT FullName,PrimaryID FROM TBL_ProjectManagers ORDER BY FullName ASC;";
cmd.Connection = connection;
connection.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
while (sdr.Read())
{
ListItem item = new ListItem();
item.Text = sdr["FullName"].ToString();
item.Value = sdr["PrimaryID"].ToString();
cbProjectManager.Items.Add(item);
cbProjectManager.Attributes.Add("class","ProjectManagerCheckbox");
}
}
connection.Close();
}
}
}
摘录2
private void GetProjectManagers()
{
if (!IsPostBack)
using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["tablename"].ConnectionString))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = "SELECT FullName,PrimaryID FROM TBL_ProjectManagers ORDER BY FullName ASC;";
cmd.Connection = connection;
connection.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
while (sdr.Read())
{
ListItem item = new ListItem();
item.Text = sdr["FullName"].ToString();
item.Value = sdr["PrimaryID"].ToString();
item.Attributes.Add("class", "ProjectManagerCheckbox");
cbProjectManager.Items.Add(item);
}
}
connection.Close();
}
}
}
由于
elboffor
::编辑:: 感谢在评论中指出CssClass是我需要添加一个类,现在我的jQuery代码确实触发了。 但由于某种原因,它并没有拿起所检查的盒子的价值。 我正在做的是将所有复选框的值连接到一个文本框字段中。
这是我的jquery
$(".ProjectManagerCheckbox").on("change", function () {
var compiled = ($(".ProjectManagerCheckbox:checkbox:checked").map(function () {
return this.value;
}).get().join(", "));
alert(compiled);
$("#tbCompiledProjectManager").val(compiled);