문제

여기 내 HTML이 있습니다.

<tr>
                        <td colspan="2" class="borderBottomCell">
                          <div class="benefitInfo" style="WIDTH: 99%! important;">
                            <asp:DropDownList runat="server" ID="ddlbc1"  />
                            <asp:Label runat="server" ID="lblbc1" />
                            <asp:Literal runat="server" ID="spcbc1" Text="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" />
                            <asp:Label runat="server" ID="bd1" />
                            <asp:HiddenField runat="server" ID="hdnbc1"  /> 
                          </div>
                        </td>
                        <td class="borderBottomCell2">
                            <asp:TextBox runat="server" ID="amt1" CssClass="transparentTextBox amount" Width="60px" Columns="9" />
                        </td>
                        <td class="borderBottomCell2">
                            <asp:TextBox runat="server" ID="int1" CssClass="transparentTextBox" Width="60px" Columns="9" />

                        </td>
                    </tr>

TextBox AMT1에 대한 참조를 얻으려고합니다. 테이블에서 단 하나의 줄이므로 루프로 이것을 필요로합니다. 드롭 다운을 통해 반복해야하며 선택한 index가 0보다 크면 (> 0) 텍스트 박스가 금액이 0보다 큰 양을 가져야합니다 (> 0). 나중에 데이터 타입 유효성 검사를 구현하겠습니다. 현재 루프를 사용하여 관련 텍스트 상자에 도달하는 방법을 알아야합니다.

지금 까지이 코드가 있습니다 ....

$(".benefitInfo select").each(function() {
    var ddl = $(this);

});

이것을 달성하는 가장 좋은 방법은 무엇입니까? 참조를 가져와야합니다 parent().parent().next().find(":input") ... 아니면 그 효과에 뭔가?

도움이 되었습니까?

해결책

이것은 작동해야합니다 :

$(".benefitInfo select").each(function() {
    var ddl = $(this);
    var amtTxt = ddl.closest('tr').find('.amount');
});
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top