我正在开发一个asp.net应用程序。我用jquery multiselect选项实现了asp.net dropdownlistbox。用户可以在dropdownboxlist中选择多个值。我想在buttonclick事件的服务器端选择这些值。我正在javascript中选择所有值。我想在按钮点击事件中获取所有值。除了ajax之外,有没有办法在服务器端访问多个选定的值?任何帮助,将不胜感激。 这是我的下拉框。
<h3>Awarded To: <asp:DropDownList ID="ddlvendors" CssClass="limitedNumbSelect2" Multiple="True" runat="server" Width="30%"></asp:DropDownList></h3>
我在页面加载事件的服务器端绑定值。
这是我以前的代码。
$(".limitedNumbSelect2 option").each(function () {
var val = $(this).val();
var tempVal = $(".limitedNumbSelect2").val();
if (tempVal.indexOf(val) >= 0 && selected.indexOf(val) < 0) {
selected.push(val);
} else if (tempVal.indexOf(val) < 0 && selected.indexOf(val) >= 0) {
selected.splice(selected.indexOf(val), 1);
}
})
这是根据下拉列表中的选定值启用所有复选框的代码。
$('#<%= gdvRegretletter.ClientID %> input[type="hidden"]').each(function () {
$(this).closest('tr').find('input[type="checkbox"]').prop('disabled', false);
});
答案 0 :(得分:2)
创建一个ListBox
,如下所示:
<asp:ListBox ID="lstFruits" runat="server" SelectionMode="Multiple">
<asp:ListItem Text="Mango" Value="1" />
<asp:ListItem Text="Apple" Value="2" />
<asp:ListItem Text="Banana" Value="3" />
<asp:ListItem Text="Guava" Value="4" />
<asp:ListItem Text="Orange" Value="5" />
</asp:ListBox>
<asp:Button Text="Submit" runat="server" OnClick="Submit" />
添加以下项目:
会是这样的:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<link href="http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.0.3/css/bootstrap.min.css"
rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.0.3/js/bootstrap.min.js"></script>
<link href="http://cdn.rawgit.com/davidstutz/bootstrap-multiselect/master/dist/css/bootstrap-multiselect.css" rel="stylesheet" type="text/css" />
<script src="http://cdn.rawgit.com/davidstutz/bootstrap-multiselect/master/dist/js/bootstrap-multiselect.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$('[id*=lstFruits]').multiselect({
includeSelectAllOption: true
});
});
</script>
以下是Button click事件处理程序,在该处理程序中,对ListBox项执行循环并检查其Selected属性。如果它返回True,则选择Item,如果为False,则不选择Item。
protected void Submit(object sender, EventArgs e)
{
string message = "";
foreach (ListItem item in lstFruits.Items)
{
if (item.Selected)
{
message += item.Text + " " + item.Value + "\\n";
}
}
ClientScript.RegisterClientScriptBlock(this.GetType(), "alert", "alert('" + message + "');", true);
}