如何验证Youtube和Vimeo网址

时间:2016-12-24 16:33:06

标签: javascript jquery youtube vimeo

我必须创建这个小提琴,只验证youtube网址。我想验证具有相同输入的vimeo链接,是否可以这样做?

这是我的js代码;

function ytVidId(url) {
    var p = /^(?:https?:\/\/)?(?:m\.|www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?$/;
    return (url.match(p)) ? RegExp.$1 : false;
}

$('#youtube').bind("change keyup input", function() {
    var url = $(this).val();
    if (ytVidId(url) !== false) {
        $("#status").html('<iframe src="https://www.youtube.com/embed/' + ytVidId(url) + '" id="videoObject" type="text/html" width="100%" height="265" frameborder="0" allowfullscreen></iframe>');
        $('#button').attr('disabled', false);

    } else {
        $("#status").html("not valid url");
        $('#button').attr('disabled',true);

    }
});

1 个答案:

答案 0 :(得分:0)

您可以使用以下表达式检查网址的有效性。

   var a= url.match(/http:\/\/(:?www.)?(\w*)/)[2];
   if (a =="youtube")
    { 
           // do stuff
    }
   else if (a =="vimeo")
    {
            // do stuff
    }
    else
    {
           // Not a valid url
    }

var a  = url.match("/http:\/\/(?:www.)?(?:(vimeo).com\/(.*)|(youtube).com\/watch\?v=(.*?)&)/");

if (a =="youtube")
{ 
  // do stuff
}
else if (a =="vimeo")
{
// do stuff
}
else
{
    // Not a valid url
}