我想在前台移除除了<p><br><b><i><ul><li>标签之外的其他所有html标签
例如 var str = '<p class="p1"> p 测试</p><div id="d1" class="cd1">div 测试</div>这是测试<br><table id="t1" class= "ta1"><tr><td>table 测试</td></tr></table>';
处理后得到的结果是
str = '<p class="p1"> p 测试</p>div 测试这是测试<br>table 测试';

解决方案 »

  1.   

    用jquery$(":not(p):not(br):not(b):not(i):not(ul):not(li)").remove();
      

  2.   

    用jquery$(":not(p):not(br):not(b):not(i):not(ul):not(li)").remove();
      

  3.   

    用jquery$(":not(p):not(br):not(b):not(i):not(ul):not(li)").remove();
      

  4.   


    var str = '<p class="p1"> p 测试</p><div id="d1" class="cd1">div 测试</div>这是测试<br><table id="t1" class= "ta1"><tr><td>table 测试</td></tr></table>';
    var reg=/(?:<[^p(?:br)bi(?:ul)(?:li)\/].*?>)|(?:<\/[^p(?:br)bi(?:ul)(?:li)].*?>)/g;
    alert(str.replace(reg,""));正则表达式不是太好写了很长,但是目的总算达到了
      

  5.   


    $(":not(p):not(br):not(b):not(i):not(ul):not(li)").each(function(i){
    var tt=$(this).html();
    $(this).replaceWith(tt);
    })
      

  6.   

    var str = '<p class="p1"> p 测试</p><div id="d1" class="cd1">div 测试</div>这是测试<br><table id="t1" class= "ta1"><tr><td>table 测试</td></tr></table>';
    var reg=/(?:<[^p(?:br)bi(?:ul)(?:li)\/]……
    就是这个
      

  7.   


     假如里面的DOM有错误,有很多标签没有闭合呢?