我正在从http://www.erichynds.com/jquery/jquery-ui-multiselect-widget/
实现这个JQuery UI多选我已经设法在我的asp.net页面中使用它,但是当我提交按钮时,所选文本仅显示最后检查的元素。所以我想在隐藏字段中获取所有选定的值。但是如何将隐藏字段值分配给数据表?
这里我给我的datatable.Previuosly我正在尝试将所选项目存储在数据表中。
DataTable dtAssigners = new DataTable();
dtAssigners.Columns.Add("GIMID", typeof(int));
dtAssigners.Columns.Add("UserId", typeof(int));
dtAssigners.Columns.Add("MODE", typeof(char));
dtAssigners.Columns.Add("CreatedBy", typeof(int));
DataTable dt = null;
foreach (System.Web.UI.WebControls.ListItem list in ddlAssignedTo.Items)
{
if (list.Selected)
{
DataRow drUsers = dtAssigners.NewRow();
drUsers["GIMID"] = GIMID;
drUsers["MODE"] = 'I';
drUsers["UserId"] = Convert.ToInt32(list.Value);
drUsers["CreatedBy"] = CurUsr.UserId;
dtAssigners.Rows.Add(drUsers);
}
}
但现在如何在数据表中分配hidden field value
?有人可以帮助我吗?
答案 0 :(得分:1)
用这些
替换您的代码DataTable dtAssigners = new DataTable();
dtAssigners.Columns.Add("GIMID", typeof(int));
dtAssigners.Columns.Add("UserId", typeof(int));
dtAssigners.Columns.Add("MODE", typeof(char));
dtAssigners.Columns.Add("CreatedBy", typeof(int));
DataTable dt = null;
string[] value = hdnFiledID.Value.Split(',');
foreach (string va in value) {
DataRow drUsers = dtAssigners.NewRow();
drUsers["GIMID"] = GIMID;
drUsers["MODE"] = 'I';
drUsers["UserId"] = Convert.ToInt32(va);
drUsers["CreatedBy"] = CurUsr.UserId;
dtAssigners.Rows.Add(drUsers);
}
答案 1 :(得分:0)
你有一些HTML吗?检查提交前是否选择了选项。如果不是,则不将倍数设置为true。
这取自http://www.erichynds.com/jquery/jquery-ui-multiselect-widget/
接下来构建一个标准的多选框。 不要忘记多重属性:
<select id="example" name="example" multiple="multiple">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
<option value="5">Option 5</option>
</select>
答案 2 :(得分:0)
如果你需要数据表的Hiddenfield值.. 首先添加控件
<input id="Hidden1" type="hidden" name="hddclick" runat="server" />
Hidden1.Value = dt // datatable object name