ComboBox抛出错误:无法获取属性' createRange'未定义或空引用

时间:2014-08-19 16:08:08

标签: javascript asp.net visual-studio-2013 ajaxcontroltoolkit

我正在使用Ajax Control Toolkit中的ComboBox。以下所有代码均由VisualStudio 2013生成(使用asp.net 4.5)。我只选择了数据连接。为什么我收到此JavaScript错误:"无法获取属性' createRange'未定义或空引用"以及如何解决问题?谢谢。

 <asp:ComboBox ID="ComboBox1" runat="server" AutoCompleteMode="Append" 
     DataSourceID="SqlDataSource_countries" DataTextField="country" 
     DataValueField="ID_country" DropDownStyle="DropDownList" MaxLength="0" 
      style="display: inline;">
 </asp:ComboBox>

 <asp:SqlDataSource ID="SqlDataSource_countries" runat="server"
    ConnectionString="<%$ ConnectionStrings:DefaultConnection %>" 
    SelectCommand="SELECT [ID_country], [country] FROM [countries] 
    ORDER BY [country]"></asp:SqlDataSource>

2 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,通过设置以下Meta键解决了这个问题:

  

<meta http-equiv="X-UA-Compatible" content="IE=10,chrome=1" />

答案 1 :(得分:1)

asp:ComboBox调用以下javascript行:

document.selection.createRange();

正如您在this answer中看到的那样,IE11中根本不支持document.selection

很遗憾,您无法将ComboBox更改为使用document.getSelection()而非document.selection.createRange()

话虽如此,有什么可做的?

☞似乎唯一的选择是用常规下拉列表替换asp:ComboBox。 (或者,如果您需要允许用户输入,请查找/实现类似的内容。)