我允许我的用户插入网站网址。
众所周知,有些人完全没用,随便输入,不做任何检查。
我想对用户输入的网址进行测试,检查它是否有效,如果无效,则使用 javascript 自动修复它,然后再向公众显示。
用户提交的网址示例:
- http://google.com
- www.google.com
- google.com
- http://google.com
- http://google.com
- ++++++++
var web = user.url;
var urlCheck = /(http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
if(web){
if(urlCheck.test(web) === false) {
web = "http://" + web;
}
$('div.Link').html("<a href=\"javascript:void(0);\" onclick=\"externalLink('" + web + "');\">" + web + "</a>");
}
关于更好的检查/测试以避免问题的建议?
最佳答案
试试这个
function is_valid_url(url)
{
return url.match(/^(ht|f)tps?:\/\/[a-z0-9-\.]+\.[a-z]{2,4}\/?([^\s<>\#%"\,\{\}\\|\\\^\[\]`]+)?$/);
}
在任何需要 URL 验证的地方调用 is_valid_url(YOUR_WEBSITE_URL)
函数,它将返回 true 或 false
关于javascript url 检查和修复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22283289/