2014-09-12 26 views
-4

我不明白为什么这段代码在FF中工作,但不在IE中。.sibling()和.next()在IE中不工作

<table id="knowledgeTreeTable" > 
    <tbody> 
    <tr> 
     <th class="">Who are the services being provided for?</th> 
     <td class="">Text</td> 
     <input id="answerText0_Old" class="oldAns" type="hidden" value="Named Insured" /> 
     <input type="hidden" value="Who are the services being provided for?" /> 
     <input type="hidden" value="1014"/> 
    </tr> 
    </tbody> 
</table> 

$("#knowledgeTreeTable td").each(function() { 
    alert($jq11(this).next().val()); 
    $(this).html("Text"); 
}); 

FF显示文本位IE显示id为空白。我用兄弟姐妹()FF显示文字,但IE打印未定义。任何想法?

+1

什么版本的jQuery和IE?而你的HTML无效。您的输入需要位于表格单元格内。 – j08691 2014-09-12 18:49:00

+2

该HTML无效。你应该先解决它,然后抱怨工具X不起作用;它是为了在提供有效的HTML时工作。 – Jon 2014-09-12 18:49:53

+0

那是有效的HTML吗?你在''内有输入,但不在'​​' – jalynn2 2014-09-12 18:50:38

回答

2

这不是一个有效的HTML,输入不允许为TR孩子。这可能是因为它跨浏览器随机使用的原因。

不同的浏览器在这种情况下实现了不同的策略。我认为这是不相关的策略是“正确的”,你应该修正你的HTML使其有效。