#javascript #asp.net #internet-explorer-8
#javascript #asp.net #internet-explorer-8
Вопрос:
У сайта, который я обновляю, возникла проблема с IE, которая поставила меня в тупик. В Firefox все работает нормально (конечно). В одной из проблем есть дополнительная пустая страница на всех страницах веб-сайта. Вторая проблема заключается в том, что некоторые страницы отображаются пустыми. На этих страницах есть наборы списков. Эти наборы списков имеют класс css, называемый ListSet. Каждый набор списков заполняется с помощью этого javascript:
jQuery(document).ready(function($) {
fillApprovalList("DutaApprovalLists");
});
var fillApprovalList = function(ajaxFunction) {
if (getParameterByName("mode").toLowerCase() == "approve") {
var $listsToFill = $(".approvalList").find(".listSet")
$listsToFill.each(function() {
var $currObj = $(this);
var statusAndId = $currObj.attr("id");
var $table = $currObj.find(".resultList");
fillApprovalListAjax(ajaxFunction,statusAndId,0);
});
}
}
var fillApprovalListAjax = function(ajaxFunction, statusAndId, page){
var $currObj = $("[id='" statusAndId "']");
var $table = $currObj.find(".resultList");
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "/database/services/ApprovalList.asmx/" ajaxFunction,
data: "{statusAndId:'" statusAndId "',page:" page "}",
dataType: "json",
success: function(data) {
$table.find("tr").remove()
$table.parent().find("#loading").hide()
$table.append(data.d.ResultSet);
var $pagingDiv = $table.parent().find(".paging");
$pagingDiv.find("a").remove()
$pagingDiv.append(data.d.Links);
$pagingDiv.find("a").click(pageApprovalList);
var $countDiv= $table.parent().find("#count");
$countDiv.empty();
$countDiv.append(data.d.DisplayingText);
}
});
}
Теперь я ни за что на свете не могу понять, почему это не работает. Я просматриваю код, javascript и серверную часть, и все возвращается нормально. Чтобы удалить лишнюю страницу, я включил это:
<!--[if IE 8]>
<style type="text/css">
#small_boxes {
overflow: hidden;
padding-bottom: -150px;
}
</style>
<![endif]-->
Но только если у меня нет этой строки:
<meta http-equiv="X-UA-Compatible" content="IE=xxx" />
Если бы я изменил эту строку, допустим, IE= EmulateIE8, тогда страница списка отображалась бы нормально, но тогда у меня на каждой странице были бы пробелы. Я перепробовал практически все параметры IE =, и ни один из них не исправляет оба. И все мои javascript включают как таковые:
<script type="text/javascript" language="javascript" src="/scripts/jquery-1.5.1.js"></script>
Наличие тега < / script> . У меня происходит что-то вроде сделки с курицей и яйцом.