HTML是:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
<textarea type="text" id="url"></textarea>
<br/>
<input type="button" value="test" id="btn" />
<div id="result" />
</body>
</html>
的JavaScript:
$("#btn").click(function(){
var url = $("#url").val();
console.log(url);
if(checkURL(url)){
$("#result").text("All ok");
}
else{
$("#result").text("Not ok !");
}
});
function checkURL(value) {
var urlregex = new RegExp("^(http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&%\$\-]+)*@)*((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|([a-zA-Z0-9\-]+\.)*[a-zA-Z0-9\-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(\:[0-9]+)*(/($|[a-zA-Z0-9\.\,\?\'\\\+&%\$#\=~_\-]+))*$");
if (urlregex.test(value)) {
return (true);
}
return (false);
}
JSFIDDLE
什么*不*它做什么?你提供的是什么输入不能正确验证? –
它不允许使用“www.xxx.com”,因为它不是网址 - 它是一个字符串。 – h2ooooooo
'www.xxx.com'只是一个域名,而不是一个URL。如果你想验证它的URL,你必须首先做到这一点。 – CBroe