2013-04-08 46 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