【问题标题】:jQuery. Convert string to jQuery object and remove link (a) tagjQuery。将字符串转换为 jQuery 对象并删除链接 (a) 标记
【发布时间】:2015-05-05 09:02:41
【问题描述】:

我想从字符串中删除一个 href 标签。 从此:

"googleokss 强者strong"

对此:“google okss Strognsstrong

我已经试过了:

function removeElements(text, selector) {
    var wrapped = $("<div>" + text + "</div>");
    wrapped.find(selector).remove();
    return wrapped.html();
}
var newContent = removeElements(tinyMCE.get('opt3').getContent(), 'a');

但出现错误:无法读取属性 'find' of null。

也许有人知道其他方法?

【问题讨论】:

  • 您能在 Fiddle 中提供一份工作副本吗?

标签: jquery tags


【解决方案1】:

你确定你的页面上加载了 jQuery 吗?

另外,请尝试使用.unwrap() (https://api.jquery.com/unwrap/) 而不是.remove()

【讨论】:

  • 除非您希望将结果包装在 div-Tags 中,否则您可以使用 jQuery 的 parseHTML() 将字符串转换为 html。
【解决方案2】:

您需要 unwrap 通行证选择器的 contents 所以

function removeElements(text, selector) {
    var wrapped = $("<div>/", {
        html: text
    });
    wrapped.find(selector).contents().unwrap();
    return wrapped.html();
}

演示:Fiddle

【讨论】:

    【解决方案3】:

    假设您有一个包含您的文本的 div

    <div class="test">
       <a id="link" href="http://www.google.com">google</a> " okss strognsstrong
    </div>
    

    您可以使用.text() 方法获取包含在#test div 中的实际文本,然后使用.html() 预填充div

    $("#test").html($('#test').text());
    

    上面的代码行会产生这个:

    <div class="test">
        google okss strognsstrong
    </div>
    

    【讨论】:

      猜你喜欢
      • 2015-12-03
      • 1970-01-01
      • 2016-09-23
      • 2013-06-20
      • 1970-01-01
      • 1970-01-01
      • 2015-08-10
      • 2010-10-13
      • 2013-04-15
      相关资源
      最近更新 更多