在jQuery中选择动态生成的元素

时间:2013-11-25 14:37:46

标签: javascript jquery html

我有这段代码:

<c:forEach items="${ sample }" var="test">
    <tr>
        <td><strong>${ test.test }.</strong></td> // I want to get the text
        <td>
            <fieldset class="span11">
                <div class="control-group">
                    <label class="control-label"><strong>${ test.blah }</strong></label>
                    <div class="controls" id="question${ test.blah }">
                        <c:forEach var="beng" items="${ anotherSample }">
                            <form:radiobutton path="boom" class="question-choices" data-label="${ choices }" value="${ beng-boom }"/><br>
                        </c:forEach>
                    </div>
                </div>
            </fieldset>                 
        </td>
    </tr>
</c:forEach>

我想从<td>

中获取第一个radio button的文字

到目前为止我尝试的是:

$('.question-choices').on('change', function() {
    console.log( $(this).parent('tr').closest('td').text() );
});

但是这会返回空字符串

2 个答案:

答案 0 :(得分:2)

试试这个;

$('.question-choices').on('change', function() {
    console.log( $(this).closest('tr').find('td:first').find("strong").html() );
});

答案 1 :(得分:1)

parent()只能获得直接父级。

尝试使用.parents

$('.question-choices').on('change', function() {
    console.log( $(this).parents('tr').closest('td').text() );
});