【发布时间】:2009-11-02 20:07:52
【问题描述】:
我对包含输入框的表头有疑问。我在桌子的其余部分有类似的 div,它们工作正常。默认情况下,div 是隐藏的,并且是绝对定位的 div 内的表格通常只包含几列,每列中有一个表单元素。这是典型的:
<a>show editrow</a>
<div class="editrow">
<form>
<table>
<tr>
<td>
<input type="text" />
</td>
...
<td>
<input type="submit" />
</td>
</tr>
</table>
</form>
</div>
我在标题的第一个元素中以及下面的每个表格行中都有这个。当我把它放在第一个元素中时,我无法单击输入框,但选择框和复选框工作正常。我正在使用 JQuery 表排序器,因此我的表头必须使用 thead、tr、th 标签。令人沮丧的是,有效和无效之间的唯一区别是包含单元格 td vs, th。像这样:
<th>
doesn't work
</th>
对比
<td>
does work
</td>
我发现的唯一解决方法是将 div 移到标题之外,并使用一些更复杂的 javascript 来找到它,以便我可以显示/隐藏它/等等。我不喜欢那个解决方案,因为我必须重写很多页面,而且这没有任何意义。我将链接和 div 放在标题中,以防止它与表格的其余部分一起排序。
关于为什么的任何想法?或者如何在不从所有表头中删除 div 的情况下修复它?
【问题讨论】:
-
我认为您的代码摘录中没有足够的信息。例如,它不显示行和单元格。