我正在使用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>
答案 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。 (或者,如果您需要允许用户输入,请查找/实现类似的内容。)