2010-11-22 86 views
2

因此,IE是給我的問題,想不到......jQuery的未指定的錯誤IE

我創建一個jQuery對話框(DIV3),然後裏面DIV3,我顯示錶(DIV4)。這在Firefox中正常工作。但是,在IE中它不顯示div 3,即彈出窗口。相反,它會返回錯誤「未指定錯誤」,並只顯示錶格div4。代碼如下...

我相信錯誤是在else語句中的某處。

任何幫助表示讚賞。謝謝!

function displayMid(count) { 
     var x = $("#Pid"+count).text(); 
     var y = $("#PidSeries"+count).text(); 
     //alert(x); 
     if (x == 0) { 
      return; 
     } 
     else if (y == null || y == " " || y == "") { 
      $("#inputDiv3").html("").dialog('destroy'); 
      $("#inputDiv3").dialog({ 
       title: 'You must add the Product before you can assign catalogs!!!', 
       width: 500, 
       modal: true, 
       resizable: false, 
       buttons: { 
        'Close': function() { $(this).dialog('close'); } 
       } 
      }); 
     } 
     else { 
     $("#inputDiv3").dialog('destroy'); 
     $("#inputDiv3").html('<div style="height:300px;overflow-y:scroll;"><div id="inputDiv4"></div></div>').dialog({ 
      title: 'Catalog for ' + $("#PidTitle"+count).text(), 
      width: 500, 
      modal: true, 
      resizable: false, 
      open: $.get('content_backend_pub_pid.ashx', { cmd: 4, pid: x }, function(o) { 
         $("#inputDiv4").html(o); 
        }), 
      buttons: { 
       'Close': function() { $(this).dialog('close'); } 
      } 
     }); 

     } 

    } 
+0

那鉻是怎麼處理鉻的 – kobe 2010-11-22 21:15:08

+0

是的。在鉻合金工作正常... – 2010-11-22 21:20:28

回答

4

不知道這個,但我認爲你應該包裝ajax呼籲打開:在一個匿名函數。

open: function(){ 
      $.get('content_backend_pub_pid.ashx', { cmd: 4, pid: x }, function(o) { 
       $("#inputDiv4").html(o); 
      }); 
}, 
1

通常IE指定錯誤的行號。你有很多事情要做,試着把每一部分分解成一個單獨的語句。然後,您可以在每行之間插入控制檯日誌。

通常我喜歡創建一個新變量並將其分配給該屬性,或者如果屬性是函數,則創建一個新的本地函數。

0

這個問題似乎是在你的開放功能。也許嘗試包裹在一個匿名函數,像這樣:

 $("#inputDiv3").html('<div style="height:300px;overflow-y:scroll;"><div id="inputDiv4"></div></div>').dialog({ 
      title: 'Catalog for ' + $("#PidTitle"+count).text(), 
      width: 500, 
      modal: true, 
      resizable: false, 
      open: function() { 
         $.get('content_backend_pub_pid.ashx', { cmd: 4, pid: x }, function(o) { 
          $("#inputDiv4").html(o); 
         }); 
      }, 
      buttons: { 
       'Close': function() { $(this).dialog('close'); } 
      } 
     }); 

否則,「GET」將立即觸發,而不是當你真正打開對話框。