javascript - jquery 如何替换 test 节点变为一个标签?
高洛峰
高洛峰 2017-04-11 12:45:17
[JavaScript讨论组]

代码如下,如何把下面代码中Guest - Guest 增加一个A标签?目前只知道如何取这个值.我想把html 中所有没有被包装成标签的都给包一层,这样可以便于后续操作

<li id="test" value="0">
    Guest - Guest
    <ul class="task-list">
        <li>Role = $everyone, $unauthenticated</li>
        <li>
            Has access to the "List projects" function, but none of the others
        </li>
    </ul>
</li>
var test=$("#test").contents().filter(function() {//取值
    return this.nodeType === 3;
    })[0].nodeValue;
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(2)
PHPz
var test=$("#test").contents().each(function(index,node) {//取值
    if(this.nodeType === 3){
        $(this).wrap("<a class=\"wrap\"> </a>");
    };
});

demo

PHP中文网

@Wenci丶 的回答已经可行了,不过可以改成 filter 实现的,另外,看你的意思应该是想包个 <span> 而不是 <a> 吧。

$("#test").contents()
    .filter((i, node) => {
        return node.nodeType === 3;
    })
    .wrap("<span>");

https://jsfiddle.net/9m8Lqcbj/

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号