2013-04-08 54 views
0

此代碼工作正常,除了在IE7和8jQuery的麻煩與IE7。家長.find

$(document).ready(function(){ 
    $('#buchen li').load('buchen.html'); 
    $(".nav-three").click(function(){ 
     var reisename = $(this).parents(".kurzreise").find("h3").text(); 

<!--Up until here everything seems fine. The var "reisename" contains the text it should.--> 

     $(this).parents(".kurzreise").find("#reiseziel").text(reisename); 
     $(this).parents(".kurzreise").find("#reiseziel").val(reisename); 
    }); 
}); 

當試圖寫在div「#reiseziel」,什麼都不會發生在IE7中的文本。 我認爲它可能與我通過查詢加載「buchen.html」到另一個html頁面的事實有關。 或者.parents或.find是否存在已知問題?

謝謝你的幫助。

回答

0

也許你可以改變它來使用ajax函數,並在成功的內部處理你的動態內容?

$.ajax({ 
    url: 'buchen.html', 
    success: function(data) { 
     $('#buchen li').append(data); 
     // Maybe put your stuff here. 

     $(this).parents(".kurzreise").find("#reiseziel").text(reisename); 
     $(this).parents(".kurzreise").find("#reiseziel").val(reisename); 
    } 
}); 
+0

謝謝扎克,我試過你的解決方案。同樣的結果出現了。 ie7不顯示任何東西,而其他瀏覽器沒有問題。 所以現在我猜,問題在於這一行: $(this).parents(「。kurzreise」)。find(「#reiseziel」)。text(reisename); 任何想法,什麼即不喜歡該行? – 2013-04-08 14:27:18

+0

我需要看到html ...也許你可以改變父母到最近?它會在找到第一個之後停止,並且在支票中包含「this」 - 查看是否有效 - 即使您擁有多個.kurzeise。 $(本).closest( 「kurzreise。 」)找到(「 #reiseziel」)文本(reisename)。 – Zach 2013-04-08 15:08:40

+0

你可以做的另一件事是將靜態加載的數據靜態地加載並測試。如果這樣工作,那麼我們已經縮小了範圍。編輯 - 是.nav-three與.load()動態加載? – Zach 2013-04-08 15:13:50