2017-08-29 34 views
0

我在我的asp.net项目中使用了一个多选html控件,我试图通过te用户来获取选定的项目。这是的.aspx页面中使用我的html代码:在asp.net中选择多个html NullReferenceException

<label>Drop Columns: </label> 
<select id="select1" name="select1" runat="server" class="form-control select2" multiple="multiple"> 
    <option value=0>Rows Header</option> 
    <option value=1>item 1</option> 
    <option value=2>item 2</option> 
    <option value=3>item 3</option> 
    <option value=4>item 3</option> 
</select> 

,这背后是用户使用来获得所选项目的C#代码:

for (int i = 0; i <= select1.Items.Count -1; i++) 
{ 
    if (select1.Items[i].Selected) 
    { 
      test = select1.Items[i].ToString(); 
    } 
} 

当我执行我的代码,我得到NullReferenceException in select1.Items.Count其中:Object reference not set to an instance of an object.

问题是什么?

+0

“测试”的定义和分配任何默认值?在代码 – imsome1

+0

会在多重选择的情况下工作吗? –

回答

1

可以得到这样的选择的值:

test = Request.Form["select1"]; 
+0

的前一部分中定义的 –

+0

是的。多个项目将用逗号分隔,如:'项目1,项目2' –

+0

我检查它的工作原理,但我仍然不明白为什么我的代码不起作用,并抛出异常 –