jquery - 如何从 td 中仅删除文本?

标签 jquery

这是我的 td 的 HTML:

<td class="SmallCols PadOn">
    6 
    <input type="hidden" id="HiddenID" value="0" name="HiddenID">
</td>

6td 中唯一的文本。 td 也有我不想删除的隐藏字段。我只想删除 6 文本。我尝试了这段代码,但没有成功:

var cloneTr = $('#StudentGrid tr:last').clone();
cloneTr.closest('td').contents().filter(function () {
    return this.nodeType === 3;
}).remove().end().end();

寻求帮助和建议。谢谢

最佳答案

问题是因为 closest() 会沿着 DOM 树向上查找,而您需要沿着树向下查找子元素,因此应该使用 find()反而。另外 end() 调用也是多余的。试试这个:

var cloneTr = $('#StudentGrid tr:last').clone();
cloneTr.find('td').contents().filter(function() {
    return this.nodeType === 3;
}).remove();

Example fiddle

关于jquery - 如何从 td 中仅删除文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34899001/

相关文章:

jquery - 跨浏览器溢出 moz-hidden-unscrollable for ContentEditable

javascript - 显示模态后jquery不关注输入

jquery - 在 Firefox 和 IE 中使用 jquery 防止 onbeforeunload 警报

javascript - 如何检查 jquery 数据表中的每个复选框?

javascript - 使用 javascript 删除任何特定的 html 代码

javascript - 选择图像时显示预览 div

javascript - 文本从单选按钮交换为事件按钮

jquery - 将 not() 与表行一起使用

javascript - 向左/右/下不同方向滑动元素

asp.net - 在 jQuery 中解析 A​​SP.NET 的 URL?