如何使用jQuery

时间:2018-03-01 18:38:58

标签: jquery dom

我真的需要你的帮助,

如何从我的选择框中选择相邻的表格单元格并插入一些文本?

以下代码似乎没有像我想象的那样工作,从类名为.selectbox的参考点开始,也许还有更好的方法,所以我愿意接受建议。

$('#fin-code-alot').closest('.selectbox').next().html('test')

这是层次结构/标记:

<table>
    <tr>
        <td>Allotment:</td>
        <td>
            <div class="selectbox">
                <div class="selectric-selectbox">
                <select id="fin-code-alot" class="custom-options">
                    <option value="">&nbsp;</option>
                    <option value="120">120</option>
                    <option value="12D">12D</option>            
                </select>
                </div>
            </div>
        </td>
        <td>Put Some Text Here</td>
        <td></td>
    </tr>
</table>

2 个答案:

答案 0 :(得分:1)

.selectbox没有next(),您需要使用closest('td')进一步向上:

$('#fin-code-alot').closest('td').next().text('test')

答案 1 :(得分:0)

您的代码只选择<div class="selectbox">元素,该元素没有下一个兄弟。

您需要选择closest表格单元格,然后选择其next兄弟:

&#13;
&#13;
$('#fin-code-alot').closest('td').next('td').text('test')
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
    <tr>
        <td>Allotment:</td>
        <td>
            <div class="selectbox">
                <div class="selectric-selectbox">
                <select id="fin-code-alot" class="custom-options">
                    <option value="">&nbsp;</option>
                    <option value="120">120</option>
                    <option value="12D">12D</option>            
                </select>
                </div>
            </div>
        </td>
        <td>Put Some Text Here</td>
        <td></td>
    </tr>
</table>
&#13;
&#13;
&#13;

此外,如果您只插入文字而不是.html(),我建议您使用更安全的.text()方法。当然,如果您需要插入HTML内容,则需要使用后者。