我想把一些<p>NewText</p>输入到下一个td中,在之前的td输入有一些按键之后。例如,如果输入文本字段位于表的第二个td中,那么在我对表的第三个td进行一些键化之后,就会出现一些<p>NewText</p>。我想在没有ID、名字、类等的情况下完成它。
我的代码中的问题是<p>NewText</p>在第二和第三个td之间插入。我不知道怎么把第三个td放进去。

HTML:
<table>
    <tr>
        <td>Text</td>
        <td><input type="text" onkeyup="scripts(this)" /></td>
        <td></td>
        <td></td>
    </tr>
</table>Javascript:
function scripts($this) {
    $this.parentNode.nextSibling.innerHTML = '';
    if ($this.value !== '') {
        $("<p>NewText</p>").insertAfter($this.parentNode);
    };
};发布于 2014-01-27 13:03:39
首先:不要调用函数function。一旦你修好了:
jQuery的closest可以带您到第一个匹配的祖先元素,然后next可以带您从那里转到下一个同级。所以:
function someName(rawElement) {
    var $el = $(rawElement);
    $el.closest('td').next().html("This markup will replace the content of the next cell");
}(注意第一行,因为传入函数的不是jQuery对象,而是DOM元素。)
发布于 2014-01-27 13:03:51
一个叫做“函数”的函数?错误。
不管怎么说,这应该很简单:
function function($this) {
    if ($this.value) $this.parentNode.nextSibling.innerHTML = "<p>NewText</p>";
};https://stackoverflow.com/questions/21381561
复制相似问题