鉴于此表结构:
<table id="tblBranchDetails">
<tr>
<td width="120px">Branch:</td>
<td id="branchName" class="branchData">
<label id="lblBranchName"></label>
<input type="text" id="txtBranchName" class="hideOnLoad editBranchInfo" />
</td>
</tr>
<tr>
<td>Address Line 1:</td>
<td id="branchAddress1" class="branchData">
<label id="lblAddress1"></label>
<input type="text" id="txtAddress1" class="hideOnLoad editBranchInfo" />
</td>
</tr>...
我正在尝试在每个td中选择标签和输入,以便我可以清除标签的文本并隐藏输入。
这为我提供了标签中的文字(在控制台中验证):
$('table#tblBranchDetails tr td:nth-child(2):eq(0)').text();
所以我知道我可以用“.text('')”
清除标签的文本想出来之后,我认为这会给我输入值:
$('table#tblBranchDetails tr td:nth-child(2):eq(1)').val()
但它给了我下一个标签中的标签价值。所以很明显我使用的是:nth-child()和:eq()函数错误。
我正在尝试做什么的正确方法是什么?
答案 0 :(得分:0)
我正在研究这个。
以下是解决方案:
$('#btnShowBranchEditBoxes').click(function() {
$('#tblBranchDetails tr').find('label').fadeOut(200);
$('#tblBranchDetails tr').find('.editBranchInfo').delay(200).fadeIn(200);
// Replace the buttons
$('table#tblBranchDetails input#btnShowBranchEditBoxes').fadeOut(200);
$('table#tblBranchDetails input.btnEditBranch').delay(200).fadeIn(200);
});