0

我有一个中继器控件,在每个单元格中都有一些文本、出价按钮和一个用于出价金额的文本框。当用户单击同一单元格中的按钮时,我试图获取文本框值(出价金额),以便我可以验证出价金额。任何帮助将不胜感激。

这是我的html表格代码:

<table id="values" class="values" border="3">
<tr>
<td  align="center"  style="white-space:nowrap">
<span class="MainBgContent_UpperRight_Title" style="height:25px;max-height:25px">Your Bid: $
<asp:TextBox ID="tbBid" CssClass="bids" Style="width: 30px" runat="server" Text=''></asp:TextBox>

</span>                                                
<div style="height:10px;clear:both;"></div>

<div class="offer" style="width:100px;height:30px;line-height:20px;">                                                    
<asp:Button style="width:100px;height:30px;line-height:20px;"  Visible="true"  CssClass="btnSubmitBid"  ID="lbBid" Text="BID" runat="Server" CommandName="makeBid"    ></asp:Button>                                                    
</div>
<div style="height:20px;clear:both;"></div>
</td>
</tr>
</table>

我可以通过类名 btnSubmitBid 获取按钮的 ID,但只需要获取该特定单元格的文本框值。

谢谢你

4

1 回答 1

0

在点击按钮的javascript函数中,可以遍历DOM树找到输入。由于按钮位于单元格中的div中,因此您需要获取按钮的父级(div)的父级(单元格)。然后找到第一个孩子(跨度),以及那个跨度的孩子:

var bid = $(this).parent().parent().children()[0].children()[0];

或者您可以使用单元格上的查找功能来查找输入:

var bid = $(this).parent().parent().find("input");

或者,使用最接近的函数,尽管我不确定是否存在很大的性能差异,并且您已经知道结构以知道您需要查找多远才能找到单元格:

var bid = $(this).closest('td').find("input");

这个答案假设表中只有 on 输入。如果有多个,您应该寻找类.bids而不是元素类型input

于 2012-08-12T17:34:02.650 回答