我正在使用验证表达式来验证有效的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" />
答案 0 :(得分:1)
msdn上的文件让我相信这应该有用......无论如何,一个简单的解决方法是修改你当前的正则表达式(currentRegex|^$
)以接受除两个接受的url格式之外的空字符串。
另一种解决方案可以在这里找到; http://forums.asp.net/t/1657041.aspx/1
总而言之,您首先禁用验证程序,然后在触发TextChanged事件时启用它。