Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从所选内容中获取多个值-asp.net_C#_Html_Asp.net_Webforms - Fatal编程技术网

C# 如何从所选内容中获取多个值-asp.net

C# 如何从所选内容中获取多个值-asp.net,c#,html,asp.net,webforms,C#,Html,Asp.net,Webforms,单击按钮后,如何从select标记中获取所选值?在这里,我得到了htmlselectwith multiple choose selTest.Value仅返回第一个选定项 <select runat="server" id="selTest" name="selTest" data-placeholder="Choose a Country..." class="chzn-select" style="width:350px;" tabindex="4"> <

单击按钮后,如何从
select
标记中获取所选值?在这里,我得到了html
select
with multiple choose

selTest.Value
仅返回第一个选定项

    <select runat="server" id="selTest" name="selTest" data-placeholder="Choose a Country..." class="chzn-select" style="width:350px;" tabindex="4">
      <option value=""></option> 
      <option value="United States" selected="selected">United States</option> 
      <option value="Western Sahara">Western Sahara</option> 
      <option value="Yemen">Yemen</option> 
      <option value="Zambia" selected="selected">Zambia</option> 
      <option value="Zimbabwe" selected="selected">Zimbabwe</option>
    </select>

   <asp:Button ID="testBt" runat="server" OnClick="testBt_Click" Text="ds" />

如果您正确使用ASP.NET列表框,则可以访问
、强类型和查询:

<asp:ListBox runat="server" id="MyList" SelectionMode="Multiple">
  <asp:ListItem Value="-1"></asp:ListItem> 
  <asp:ListItem Valuealue="United States" Selected="True">United States</asp:ListItem>
  <asp:ListItem Valuealue="Western Sahara">Western Sahara</asp:ListItem> 
  <asp:ListItem Valuealue="Yemen">Yemen</asp:ListItem> 
  <asp:ListItem Valuealue="Zambia" Selected="True">Zambia</asp:ListItem> 
  <asp:ListItem Valuealue="Zimbabwe" Selected="True">Zimbabwe</asp:ListItem>
</asp:ListBox>
Html:


选项1
选项2
选项3
代码隐藏:

protected void testBt_Click(object sender, EventArgs e)
{

}
    var options = Options.Items.Cast<ListItem>()
                  .Where(item => item.Selected)
                  .Select(item => item.Value)
                  .ToList();
var options=options.Items.Cast()
.Where(项=>item.Selected)
.Select(项=>item.Value)
.ToList();

“选项”将是一个包含所有选定值的字符串列表。

循环选择中的项目并查看选定的属性。您的列表不允许多选,您需要为此指定
multiple
;但是无论如何,为什么不使用一个.NET控件,比如ListBox呢?
<asp:ListBox ID="Options" SelectionMode="Multiple" runat="server">
  <asp:ListItem Value="option1" >Option #1</asp:ListItem>
  <asp:ListItem Value="option2" >Option #2</asp:ListItem>
  <asp:ListItem Value="option3" >Option #3</asp:ListItem>
</asp:ListBox>
    var options = Options.Items.Cast<ListItem>()
                  .Where(item => item.Selected)
                  .Select(item => item.Value)
                  .ToList();