0

検証式を使用して有効なYouTubeURLを認証する作業を行っています。IEの場合を除いて、私が持っているものはうまく機能しますが、オプションとして必要なときに必要に応じて表示されます。

私はいくつかの調査を行い、別の方法を試しましたが、それでもIEで必要に応じてサポートされます。

C#正規表現でYouTubeとvimeoからURLで動画IDを取得

以下は私が現在使用しているものです。

<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" />
4

1 に答える 1

1

msdnのドキュメントは、これが機能するはずだと私に信じさせます...とにかく、簡単な回避策は、現在の正規表現(currentRegex|^$)を変更して、受け入れられる2つのURL形式に加えて空の文字列を受け入れることです。

別の解決策はここにあります。http://forums.asp.net/t/1657041.aspx/1

要約すると、バリデーターを無効にしてから、TextChangedイベントが発生したときに有効にします。

于 2013-02-07T20:16:26.013 に答える