正则表达式以避免HTML标记和空值

时间:2012-07-17 10:07:13

标签: c# javascript asp.net regex

我已经应用了文本框点击验证,并希望避免文本框中的任何html标记也简单< (打开标签)和>(关闭标签)。下面的代码正在工作,但我想为html中的空字符串和其他标签添加其他验证。有人可以帮助修改正则表达式以满足要求。

function htmlValidation() 
 {
   var re = /(<([^>]+)>)/gi;

   if (document.getElementById(’<%=TextBox2.ClientID%>’).value.match(re)){ document.getElementById(’<%=TextBox2.ClientID%>’).value = “”;
          return false;
        }
   return true;
 }

纠正上面的代码

2 个答案:

答案 0 :(得分:3)

在我看来,如果你想验证这些东西,我相信你会有一个很好的努力。

而不是阻止文本框中的HTML内容,其他解决方案可能只是html实体编码Text属性,因此<p>a</p>将转换为&gt;p&lt;a&gt;p&lt;

结果是你要将HTML“呈现为文本”,而不是让它被Web浏览器解释。

查看此MSDN文章:

答案 1 :(得分:0)

$("#<%= btnAdd.ClientID %>").click(function () {
            var txt = $("#<%= txtBox1.ClientID %>");
            var svc = $(txt).val();  //Its Let you know the textbox's value 
            var re = /(<([^>]+)>)/gi;
            if(txt.val()!=""){
            if (!txt.val().match(re)) {
               //my Operations 
               //goes here
                });
                return false;
            }
            else {
                alert("Invalid Content");
            }
            }
            else {
            alert("Blank value selected");
            }

我使用Jquery函数来检查正则表达式。这个问题是一个相关的问题 Using Jquery to add items in Listbox from Textbox

现在我可以将此标记为我的最终答案。