2011-08-24 150 views
0

我遇到了追加函數的問題。它適用於Chrome和Firefox,但不適用於IE。jQuery append無法在Internet Explorer上工作

這是我的代碼:

$('a#ajouterTarification').click(function() { 
    $("#append_tarification").append($("<div>").load("./server/hotels-ajouter-tarifications.php?i="+i).fadeIn(700)); 
    $('#nb_lignes_tarification').val(i); 
    i++; 
}); 
+1

已經試圖打破東西呢?首先創建div,比加載,而不是附加...等。 –

回答

0

我認爲這個問題可以通過.append .load和.fadeIn引起的。我沒有測試過,但嘗試以下方法:

$('a#ajouterTarification').click(function() { 

    var $div = $("<div/>"); // First store the new div in a variable 

    $("#append_tarification").append($div); // Then append 

    $div.load("./server/hotels-ajouter-tarifications.php?i="+i).fadeIn(700); // Do whatever you want with div 

    $('#nb_lignes_tarification').val(i); 
    i++; 
}); 
+0

謝謝TJ的回答,但問題仍然與ie一樣。 –

+0

只是爲了給我們一些工作,我創建了一個例子:http://jsfiddle.net/tangibleJ/6Lv85/2/。我用html替換了負載,使事情變得更容易一些。我使用FF6和IE8進行了測試。 –

+0

再次感謝,並對不起,我試圖解決問題,然後再次發佈。是的,我試過這個代碼在jsfiddle和它的工作原理,但我想問題是這條線:$ div.load(「./服務器/ hotels-ajouter-tarifications.php?i =」+我).fadeIn(700);因爲這段代碼正常工作$ div.html('loaded content')。fadeIn(700); –

0

嘗試appendTo而不是追加。這樣,在你開始對它進行操作之前,div會進入你的DOM。

$('a#ajouterTarification').click(function() { 
    $("<div>").appendTo("#append_tarification").load("./server/hotels-ajouter-tarifications.php?i="+i).fadeIn(700); 
    $('#nb_lignes_tarification').val(i); 
    i++; 
}); 
+0

感謝Denis的回答,但appendTo給出了相同的結果。它適用於Chrome和Firefox,但不是。 –

相關問題