日期:2014-05-16  浏览次数:21079 次

正则表达式过滤掉html中input type=“text”的标签,value值不过滤
正则表达式过滤掉html中input type=“text”的标签,value值不过滤。

或者将input type=“text”的标签替换成label也可以。最终想要的结果就是把input中的值提取出来显示就ok了,input标签去掉。
------解决方案--------------------
方法一(推荐):
用DOM去过滤

方法二:
你直接把
<input 换成 <label
就可以了,多于的html不需要去管。

方法三:
正则替换<input.*value=['"](.[^'"]+).+>为$1    <--这个正则也不是100%正确。能满足大部分
------解决方案--------------------
有答案了,帮你顶下,赚点分数,O(∩_∩)O~
------解决方案--------------------
<div id="scs">
    abd<input type="radio" value="1" name="a" />文本<input value="A" type="text" name="a" />abdsc <input type='text' name="b" value="B" />功能开发中……
    <input name=c  type=text value="C" />其他可能没有值哦<input name=d  type="text" />
</div>
<script type="text/javascript">
    window.onload = function(){
        var html = document.getElementById("scs").innerHTML;
        html=html.replace(/<input [^>]*type=[\'\"]text[\'\" ][^>]*>/gi,function(a){
            var v = a.match(/value="([^\"])"/);
            return "<span style='color:red'>"+(v?v[1]:"")+"</span>";
        });
        document.getElementById("scs").innerHTML=html;
    }
</script>