我正在使用我网站上的jquery ui selectable插件。我在同一页面上有近7个不同的列表和多个选择,都使用上面的插件。
用户选择特定的列表项后......如何将这些选定的项目传递回代码隐藏?
这就是我在页面上显示我的列表的方式......
<div>
<ol class="selectable" id="wlList" runat="server" clientidmode="static">
</ol>
</div>
这就是我在后面的代码中从数据库生成列表项的方法......
wl.ToList();
foreach (var w in wl)
{
HtmlGenericControl li = new HtmlGenericControl("li");
li.Attributes.Add("class", "ui-widget-content");
li.Attributes.Add("value", w.UserID.ToString());
li.InnerText = w.FirstName;
wlList.Controls.Add(li);
}
感谢帮助
答案 0 :(得分:0)
一种可能的方法是将选定的值存储在隐藏的输入中,然后简单地在服务器上读取和解析其值。
选中基于fiddle的jQuery UI Selectable Serialize Demo。
您需要的是在表单中添加隐藏的输入:
<input type="hidden" id="wlListValue" name="wlListValue" />
然后实现这样的可选变更处理程序:
$('.selectable').selectable({
stop: function(event, ui) {
var result = '';
$(".ui-selected", this).each(function() {
result += $(this).val() + ';';
});
$('#wlListValue').val(result);
}
});
然后在回发后只读取选定的值:
var selectedValues = Request["wlListValue"].Split(";".ToCharArray(),
StringSplitOptions.RemoveEmptyEntries);