IE和JQuery:.html()删除标记

IE和JQuery:.html()删除标记,jquery,internet-explorer,Jquery,Internet Explorer,我有国家、地区和城市选择。当用户更改国家/地区选择时,它会发送一个AJAX请求并接收如下数据: <div class="regionData"> <option value="1">Region name</option> <option value="2">Region name 2</option> </div> <div class="cityData"> <option value="

我有国家、地区和城市选择。当用户更改国家/地区选择时,它会发送一个AJAX请求并接收如下数据:

<div class="regionData">
  <option value="1">Region name</option>
  <option value="2">Region name 2</option>
</div>

<div class="cityData">
  <option value="1">City 1</option>
  <option value="2">City 2</option>
</div>
除了IE之外,它在所有浏览器中都能正常工作(真是个惊喜)。在IE中,html()的作用就好像它是.text(),并去掉所有标记,只留下文本。有人能就如何处理这个问题提出建议吗

作为
的子项不是有效的标记。因此IE(我认为是正确的)在
innerHTML
(因此
.html()
)中剥离它,并假装你没有犯那个错误


相反,请使用
来保存您的
标记。

您的html无效。在
div
内不能有
选项
标记

像这样发送您的回复

<select class="regionData">
  <option value="1">Region name</option>
  <option value="2">Region name 2</option>
</select>

<select class="cityData">
  <option value="1">City 1</option>
  <option value="2">City 2</option>
</select>

地区名称
地区名称2
城市1
城市2

您的JavaScript看起来不错,只需修改响应html即可。不过,如果有助于解决问题,您可以接受答案;)
<select class="regionData">
  <option value="1">Region name</option>
  <option value="2">Region name 2</option>
</select>

<select class="cityData">
  <option value="1">City 1</option>
  <option value="2">City 2</option>
</select>