我的包含输入框的表头有问题。我在表的其余部分有类似的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>
我在标题的第th个元素中以及下面的每个表格行中都有这个。当我把它放在第一个元素时,我无法点击输入框,但选择框和复选框工作正常。我正在使用JQuery表分类器,所以我的表头必须使用thead,tr,th标签。令人沮丧的是,无论是有效还是无效的唯一区别是包含单元格,td vs,th。像这样:
<th>
doesn't work
</th>
VS
<td>
does work
</td>
我发现的唯一修复是将div移到标题之外,并使用一些更复杂的javascript来查找它,以便我可以显示/隐藏它/等。我不喜欢这个解决方案,因为我必须重写很多页面,而且它没有意义。我将链接和div放在标题中,以防止它与表格的其余部分一起排序。
为什么有任何想法?或者如何在不从我的所有表格标题中删除div的情况下修复它?
答案 0 :(得分:1)
我已经在标题中创建了一个带有输入字段的快速测试页面,它在我测试过的所有浏览器中都运行良好。
您是否尝试从页面中删除所有jQuery代码然后进行测试?我可能是jQuery表分类器代码中的某些东西,由于某种原因禁用了输入字段。
你是否曾使用像firebug这样的东西检查输入元素,看它是否被禁用或隐藏在其他元素后面,使其无法点击?