youtube网址的正则表达式验证 - 字段是可选的返回值

时间:2013-01-28 20:05:36

标签: c# regex forms validation youtube

我正在使用验证表达式来验证有效的youtube网址。我所做的工作做得很好,除了在IE中,当我需要它作为可选项时它会出现。

我做了一些研究并尝试了另一种方法,但它仍然按照IE中的要求提供。

C# regex to get video id from youtube and vimeo by url

以下是我目前正在使用的内容。

<label for="you_tube">Video (Your YouTube URL):</label>
<asp:TextBox placeholder="YouTube URL to your Video" runat="server" ID="you_tube" MaxLength="150" /><br/>
<asp:RegularExpressionValidator ID="regExYouTube" SetFocusOnError="true" runat="server" ErrorMessage="Format should follow: http://youtu.be/8-qxGN4VWzY or http://www.youtube.com/watch?v=33aZX7qxgcw" CssClass="formError" ControlToValidate="you_tube" ValidationExpression="http(s)?://(www\.)?(youtu\.be|youtube\.com)[\w-/=&?]+"  Display="Dynamic" />

1 个答案:

答案 0 :(得分:1)

msdn上的文件让我相信这应该有用......无论如何,一个简单的解决方法是修改你当前的正则表达式(currentRegex|^$)以接受除两个接受的url格式之外的空字符串。

另一种解决方案可以在这里找到; http://forums.asp.net/t/1657041.aspx/1

总而言之,您首先禁用验证程序,然后在触发TextChanged事件时启用它。