【问题标题】:javascript url check and repairjavascript url检查和修复
【发布时间】:2014-03-09 14:16:48
【问题描述】:

我允许我的用户插入网站网址。

众所周知,有些人是完全没用的,在输入中输入任何内容,没有任何检查。

我想对用户输入的 url 做一个测试,检查它是否有效,如果不是,在向公众显示之前使用 javascript 自动修复它。

示例用户提交的网址:

  • http://google.com
  • www.google.com
  • google.com
  • http//google.com
  • htp:/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>");
}

关于更好的检查/测试以避免问题的建议?

【问题讨论】:

  • 哦,讽刺。提到用户“输入任何内容,没有任何检查。”,甚至没有检查他自己的问题格式是否正确;)(是的,其他人修复了它)
  • 哈哈......你去吧,我的问题绝对有效:)

标签: javascript jquery


【解决方案1】:

试试这个

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

Source

【讨论】:

    猜你喜欢
    • 2018-06-06
    • 2014-02-02
    • 2016-08-25
    • 1970-01-01
    • 1970-01-01
    • 2013-02-04
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多