У меня есть функция ajax, которая возвращает загрузку html с некоторыми элементами div.
Internet Explorer любит возвращать комментарии html как часть цикла result [i].У них нет идентификатора, поэтому он жалуется, что «объект не поддерживает это свойство или метод».
Если я удаляю комментарии, IE работает нормально.Тем не менее, комментарии полезны.Я не хочу их удалять.
Firefox все время отлично работает.
Есть ли лучший способ написать это?
$.ajax({
type: "GET",
url: ajaxUrl,
async: async,
success: function(result){
//Cycling through result DOM
for (i=0;i<$(result).length;i++) {
$('#'+$(result)[i].id).html($(result)[i].innerHTML);
}
}
Редактировать: Это некоторый упрощенный html, возвращаемый из запроса ajax.Я отключил все данные, чтобы облегчить отладку.
<!-- this comment breaks everything -->
<div id="nav">
<div id="nav_inner">
<ul>
<li class="first "><a href="http://localhost/onlinecatalogue/index.php/browse">Browse</a></li>
<li class="nav_on"><a href="http://localhost/onlinecatalogue/index.php/search">Search</a></li>
<li class=""><a href="http://localhost/onlinecatalogue/index.php/contact">Contact</a></li>
</ul>
<div id="simple_search">
<form name="simpleform" action="search" method="post">
<fieldset class="simple_search">
<input class="simple_input grey" type="text" id="search_box" name="search_box" value="kelly"/>
<input type="submit" class="k_button simple_button" value="Search" />
</fieldset>
</form>
</div>
</div>
</div>
<div id="ajax"><div id="search_content">
<div id="search_container">
</div>
<div id="results">
</div>
</div>
</div>