3

我有一个 AJAX 响应,它使用返回信息$_GET,然后将其设置为HTML容器的。这适用于 Chrome、Safari、FireFox、Opera,但不适用于 IE8。

$(function() {
  $('#content .entry-content a.mais-menos').click(
    function(){
      $('#content .entry-content a.mais-menos').css('background-position','bottom left');
      if($(this).siblings('.descricao-campanha').css('display')=='block'){
        $(this).css('background-position','bottom left');
        $(this).siblings('.descricao-campanha').slideUp(1000);

      }else{
        $('#content .entry-content .descricao-campanha').slideUp(1000);
        $(this).css('background-position','top left');
        $(this).siblings('.descricao-campanha').slideDown(1000);

        var mae = $(this).siblings('.descricao-campanha');
        var codigo = $(this).siblings('.cdPost').attr('value');

        if (mae.children('.carregando').is(":visible")){
          $.get('<?= get_bloginfo("url") ?>/get_associado.php', {cd:codigo}, function(retorno) {
            // mae.children('.carregando').hide();
            mae.html(retorno);
            // alert(retorno);
          });
        }
      }
      return false;
    }
  );
});

如果我发出警报retorno,我可以看到数据已返回,但是当我将其附加到 时div,它在 IE8 中失败。

有人可以帮我理解为什么会失败以及如何解决吗?

检查此页面中的错误http://www.superredems.com.br/associados/

如果没有图像,这就是 Retorno 返回的内容。

<div class="clear"></div>
  <div class="descricao-mercado">
    Fone: 67 3245 3330<br />
    Praça Das Nações, 330
    Bairro Centro
    <a target='_blank' href='http://pt.wikipedia.org/wiki/Anast%C3%A1cio_%28Mato_Grosso_do_Sul%29' title='ANASTACIO - MS'>ANASTACIO - MS</a>
  </div>
  <div class="clear"></div>
  <p></p>
  <div class="clear"></div>
  <div class="imagens-destaque-associado">
    <div class="clear"></div>
  </div>
  <div class="clear"></div>
</div>
4

3 回答 3

2

@PeteUh 完全正确。这是您尝试设置时尝试设置的 html:

<div class="clear"></div>
<div class="descricao-mercado">
    Fone: 67 3239 1810<br />
    Av João Garcia De Souza, 46
    Bairro Jardim Nova Água Clara
    <a target='_blank' href='http://pt.wikipedia.org/wiki/%C3%81gua_Clara' title='ÁGUA CLARA - MS'>ÁGUA CLARA - MS</a>
</div>

<div class="clear"></div>
<p></p>
<div class="clear"></div>
<div class="imagens-destaque-associado">
    <div class="clear"></div>
</div>
<div class="clear"></div>
</div>

<script>
     $('img').parent('a').colorbox();
</script>

如您所见,您有 1 个太多的结束 div 标签。

于 2013-03-07T12:52:11.870 回答
2

响应中有一个额外的 div 结束标记。删除它,它会正常工作

<div class="clear"></div>
<div class="descricao-mercado">
    Fone: 67 3239 1810<br />
    Av João Garcia De Souza, 46
    Bairro Jardim Nova Água Clara
    <a target='_blank' href='http://pt.wikipedia.org/wiki/%C3%81gua_Clara' title='ÁGUA CLARA - MS'>ÁGUA CLARA - MS</a>
</div>

<div class="clear"></div>
<p></p>
<div class="clear"></div>
<div class="imagens-destaque-associado">

<div class="clear"></div>
</div>

<div class="clear"></div>
</div> **<-- this is extra**

<script>
    $('img').parent('a').colorbox();
</script>
于 2013-03-07T12:54:01.030 回答
2

在 IE8 中附加标记时,您需要确保它有效,此错误已在此处记录,通常是由未关闭的标记引起的。

于 2013-03-07T12:44:14.380 回答