我有一个像这样的元素:
<div id="foo_<?php echo $id;?>" class="hidden"></div>
我正在尝试
if ($("#foo_ " + id).is(':hidden'))
{
//stuff
$("#foo_ " + id).html(html).slideDown('fast');
}
我已经反复检查过,div foo_233
正在firebug中找到,并显示为隐藏。 id正确传递给javascript函数。但仍然上面的行不起作用。可能有什么不对?它非常令人沮丧..
答案 0 :(得分:6)
选择器中的空格:
if ($("#foo_ " + id).is(':hidden'))
{
//stuff
$("#foo_ " + id).html(html).slideDown('fast');
}
摆脱它:
if ($("#foo_" + id).is(':hidden'))
{
//stuff
$("#foo_" + id).html(html).slideDown('fast');
}
据推测,您的div ID应该看起来像"foo_5"
,但您正在构建的选择器是"foo_ 5"
,这就是为什么if条件永远不会评估为 true 。