與IE9

2012-04-02 47 views
0

jQuery的AJAX空白頁的問題這在Firefox和Chrome,但在IE失敗。它確實在警報中顯示結果,但該頁面在IE中僅爲空白。我沒有得到任何類型的Firebug錯誤,所以我無法確定這個問題。任何人都可以在我的最後發現任何明顯的錯誤...或知道解決方法嗎?與IE9

謝謝。

$("#compareit").submit(function(e){ 
    $("#topsection").hide(); 
    $("#tabs").hide(); 
    $("#bottomWrap").hide(); 
    $("#error").html(''); 
    $("#leftcolumn").hide(); 
    $("#rightcolumn").hide(); 
    e.preventDefault(); 
    var queryString = $('#compareit').serialize(); 
    var dataString = queryString + "&count=" + totalselected; 

    $.ajax({ 
     type: 'GET', 
     url:'newmlbcompare2.php', 
     cache: false, 
     data: dataString, 
     success:function(result){ 
      $('#ajaxDiv').html(result); 
      // This alerts the HTML block that is being returned (in all browsers) 
      //alert(result); 
     } 
    }); 
    return false; 
}); 

根據要求添加了HTML。我已經被截斷了一些節省空間:

<div id="maincontainer"> 

<div id="topsection"><div id="topImage"></div></div> 

<div id="contentwrapper"> 
<div id="contentcolumn"> 
<div class="innertube"> 
<div id="compareWrapper"> 

<form name="compareit" id="compareit" action=""> 
<input type="hidden" value="2011" name="year" id="year" /> 
<div id="tabs"> 
    <ul> 
     <li><a href="#tabs0">C</a></li> 
     <li><a href="#tabs1">1B</a></li> 
    </ul> 
    <div id="tabs0"> 
     <select multiple id="C" name="playArray[]" class="tabStyle" size="10"> 

      </select> 
     </div> 
    <div id="tabs1"> 
     <select multiple id="FB" name="playArray[]" class="tabStyle" size="10"> 

      </select> 
     </div> 
</div> 
    <div id="bottomWrap"> 
     <div id="instructions"><b>Players:</b> Select up to four players.</div> 
     <div id="added_players" align="center" class="added_players"></div> 
     <div id="error" class="err"></div> 
    </div> 

</div> 

<div id='start'></div> 
</form> 
<div id="ajaxDiv"></div> 

</div> 
</div> 

<div id="leftcolumn"> 
<div class="innertube"> 
<div id="accordionLeft"> 

</div> 
</div> 
</div> 

<div id="rightcolumn"> 
<div class="innertube"> 
<div id="accordionRight"> 

</div> 
</div> 
</div> 
+0

哪裏是關聯和相關的HTML代碼?任何人都可以重現你的問題? http://sscce.org/ – Sparky 2012-04-02 16:26:58

+0

還請提供php腳本'newmlbcompare2.php',以便我們可以看到您嘗試插入到您的#ajaxDiv中的HTML。 – Stefan 2012-04-02 17:34:44

+0

@Stefan。我試圖插入表格數據 – relyt 2012-04-02 17:53:01

回答

0

正如@GeoffWarren指出的,在我的表結構的錯誤正在返回。一旦我修復它在IE中的工作。

感謝所有誰花時間看。

Kyle

1

嘗試改變$('#ajaxDiv').html(result);$('#ajaxDiv').append(result);

顯然IE可能有一些問題的.html()jQuery API

+0

這並不能說明他的問題,_「它確實表明導致警報,但網頁是空白的IE瀏覽器。」 _ – Sparky 2012-04-02 16:31:05

+0

@ Sparky672:?是的,警報有效(所有瀏覽器)。但在#ajaxDiv上調用.html()在IE中不起作用。但正如傑夫所說,也許.append()將起作用。 – Stefan 2012-04-02 17:29:41

+0

我試過.append(),但它仍然是空白的。 – relyt 2012-04-02 17:52:14

0

可能性......?更改此:

<div id="compareWrapper"> 

<form name="compareit" id="compareit" action=""> 

這樣:

<form name="compareit" id="compareit" action=""> 

<div id="compareWrapper"> 
+0

@relyt:看來我在Firefox和IE 8的工作,但在IE中我看到這樣的警告:在/home/fantasyp/public_html/autographaddict.com/huhTest/includes/compare_funcs被零除:警告。 PHP的上線160 警告:行司通過在/home/fantasyp/public_html/autographaddict.com/huhTest/includes/compare_funcs.php零182 – Stefan 2012-04-02 19:29:19

+0

是。我修好了它。我在表格結構中發現了一個錯誤。爲了調試目的,我打開了php錯誤。感謝您花時間看!我很感激。 – relyt 2012-04-02 19:36:33

+0

@rett:歡迎,並祝網站好運。 – Stefan 2012-04-02 19:55:24

0
$.ajax({ 
    type: 'GET', 
    url:'newmlbcompare2.php', 
    cache: false, 
    data: dataString, 
    dataType: "html", //try adding this 
    success:function(result){ 
     $('#ajaxDiv').html(result); 
     // This alerts the HTML block that is being returned (in all browsers) 
     //alert(result); 
    } 
}); 
+0

感謝您的帖子。我試過指定dataType,但仍然無法讓它工作。 – relyt 2012-04-02 18:45:47

+0

你能幫我一個忙嗎?請粘貼提醒的結果。也請結果變量的typeof。另外,你可以檢查在ie9中調試控制檯並粘貼結果。這是一個奇怪的,我真的很好奇。 – Fresheyeball 2012-04-02 21:25:51

+0

抱歉,延遲響應。最後,我的桌子變形了(錯過了一個關閉)。一旦解決了,一切都按預期工作。 – relyt 2012-04-05 00:12:18