在我的应用程序中,我正在使用表单的jquery验证。
还有两个其他文件可以进入Twitter页面网址和Facebook页面网址。
如何使用jquery验证这些网址?
示例:
http://twitter.com/anypage
http://twitter.com/#!/anypage
http://facebook.com/anypage
答案 0 :(得分:10)
以上解决方案/正则表达式都不够灵活 检查jsFiddle中的code。
var str1 = 'http://twitter.com/anypage'; //True
var str2 = 'http://twitter.com/#!/anypage'; //True
var str3 = 'http://facebook2.com/anypage'; //False
var str4 = 'http://www.facebook.com/anypage'; //True http & www
var str5 = 'http://facebook.com/anypage'; //True http
var str6 = 'https://facebook.com/anypage'; //True https
var str7 = 'https://www.facebook.com/anypage'; //True https & www
var str8 = 'facebook.com/anypage'; //True no protocol
var str9 = 'www.facebook.com/anypage'; //True no protocol & www
function validate_url(url)
{
if (/^(https?:\/\/)?((w{3}\.)?)twitter\.com\/(#!\/)?[a-z0-9_]+$/i.test(url))
return 'twitter';
if (/^(https?:\/\/)?((w{3}\.)?)facebook.com\/.*/i.test(url))
return 'facebook';
return 'unknown';
}
alert('This link is ' + validate_url(str2));
答案 1 :(得分:1)
我认为这可能会对你有所帮助
function validFBurl(enteredURL) {
var FBurl = /^(http|https)\:\/\/www.facebook.com\/.*/i;
if(!enteredURL.match(FBurl)) {
alert("This is not a Facebook URL");
}
else {
alert("This IS a Facebook URL");
}
}
来源: http://www.webdeveloper.com/forum/showthread.php?t=247621
答案 2 :(得分:1)
喜欢这个?
var str1 = 'http://twitter.com/anypage';
var str2 = 'http://twitter.com/#!/anypage';
var str3 = 'http://facebook.com/anypage';
if (/https?:\/\/twitter\.com\/(#!\/)?[a-z0-9_]+$/i.test(str1))
alert('Str1 has passed first regexp');
if (/https?:\/\/twitter\.com\/(#!\/)?[a-z0-9_]+$/i.test(str2))
alert('Str2 has passed first regexp');
if (/https?:\/\/facebook\.com\/[a-z0-9_]+$/i.test(str3))
alert('Str3 has passed second regexp');
或验证函数http://jsfiddle.net/36Wct/2/
var str1 = 'http://twitter.com/anypage';
var str2 = 'http://twitter.com/#!/anypage';
var str3 = 'http://facebook.com/anypage';
var str4 = 'http://facebook2.com/anypage';
function validate_url(url)
{
if (/https?:\/\/twitter\.com\/(#!\/)?[a-z0-9_]+$/i.test(url))
return 'twitter';
if (/https?:\/\/facebook\.com\/[a-z0-9_]+$/i.test(url))
return 'facebook';
return 'unknown';
}
alert('This link is ' + validate_url(str4));
答案 3 :(得分:0)
使用jQuery Validation
插件中的url()
方法。它检查输入的URL是否有效。您仍然可以根据您的要求进行自定义(即检查页面是否属于twitter或FB)。