JavaScript判断一个URL链接是否有效的实现方法


Posted in Javascript onOctober 08, 2011

引言
有一个通讯录系统, 同时部署在几台服务器上, 但是主页上有个通讯录的链接, 链接到这个系统. 问题是, 有时候链接指向的服务器出故障, 于是希望在这个服务器出故障(服务不可用)的情况下, 能指向其他服务器的链接.
解决方案一: XMLHTTP方案
以下代码摘自[2]中meizz的回帖:

<script language= "javascript"> 
function getURL(url) { 
var xmlhttp = new ActiveXObject( "Microsoft.XMLHTTP"); 
xmlhttp.open("GET", url, false); 
xmlhttp.send(); 
if(xmlhttp.readyState==4) { 
if(xmlhttp.Status != 200) alert("不存在"); 
return xmlhttp.Status==200; 
} 
return false; 
} 
</script> 
<a href= "https://3water.com/aaa.asp " onclick= "return getURL(this.href) "> csdn </a>

缺点: 使用ActiveXObject, 所以是IE Only. 非IE内核浏览器不可用.
解决方案二: jQuery扩展
以下内容参考[1]
主页: http://plugins.jquery.com/project/linkchecker
Demo 页面: http://sidashin.ru/linkchecker/
下载的压缩包内有调用样例.
补充:
如果针对一个具体的URL,光用jQuery,不需要插件可以这样:
$.ajax({ 
url: 'http://some.url.com', 
type: 'GET', 
complete: function(response) { 
if(response.status == 200) { 
alert('有效'); 
} else { 
alert('无效'); 
} 
} 
});

参考文档:
[1]http://zhidao.baidu.com/question/138740329.html?push=ql

[2]http://topic.csdn.net/t/20041214/16/3644539.html

Javascript 相关文章推荐
使弱类型的语言JavaScript变强势
Jun 22 Javascript
用jquery实现的模拟QQ邮箱里的收件人选取及其他效果(一)
Jan 06 Javascript
Javascript变量函数浅析
Sep 02 Javascript
顶部缓冲下拉菜单导航特效的JS代码
Aug 27 Javascript
通过复制Table生成word和excel的javascript代码
Jan 20 Javascript
JavaScript使用Replace进行字符串替换的方法
Apr 14 Javascript
javascript鼠标跟随运动3种效果(眼球效果,苹果菜单,方向跟随)
Oct 27 Javascript
Vue.js组件tabs实现选项卡切换效果
Dec 01 Javascript
mpvue小程序循环动画开启暂停的实现方法
May 15 Javascript
基于js实现逐步显示文字输出代码实例
Apr 02 Javascript
JavaScript设计模式之观察者模式与发布订阅模式详解
May 07 Javascript
解决vue单页面应用打包后相对路径、绝对路径相关问题
Aug 14 Javascript
jQuery EasyUI API 中文文档 - ComboBox组合框
Oct 07 #Javascript
JS 如果改变span标签的是否隐藏属性
Oct 06 #Javascript
js弹出层之1:JQuery.Boxy (二)
Oct 06 #Javascript
jQuery EasyUI API 中文文档 - ValidateBox验证框
Oct 06 #Javascript
jQuery AjaxQueue改进步骤
Oct 06 #Javascript
json2.js的初步学习与了解
Oct 06 #Javascript
弹出层之1:JQuery.Boxy (一) 使用介绍
Oct 06 #Javascript
You might like
php实现图片上传并进行替换操作
2016/03/15 PHP
Yii 2中的load()和save()示例详解
2017/08/03 PHP
javascript之可拖动的iframe效果代码
2008/08/01 Javascript
Javascript 面向对象(三)接口代码
2012/05/23 Javascript
JavaScript等比例缩放图片控制超出范围的图片
2013/08/06 Javascript
JS面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)
2014/08/16 Javascript
node.js中的http.response.writeHead方法使用说明
2014/12/14 Javascript
js面向对象之公有、私有、静态属性和方法详解
2015/04/17 Javascript
jQuery实现获取table表格第一列值的方法
2016/03/01 Javascript
浅谈Cookie的生命周期问题
2016/08/02 Javascript
详解vue 组件之间使用eventbus传值
2017/10/25 Javascript
Vue.js中使用iView日期选择器并设置开始时间结束时间校验功能
2018/08/12 Javascript
Puppeteer环境搭建的详细步骤
2018/09/21 Javascript
微信小程序如何获取地址
2019/12/24 Javascript
基于javascript实现移动端轮播图效果
2020/12/21 Javascript
[47:50]Secret vs VP 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python采用getopt解析命令行输入参数实例
2014/09/30 Python
python获取目录下所有文件的方法
2015/06/01 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
分析Python中设计模式之Decorator装饰器模式的要点
2016/03/02 Python
谈谈python垃圾回收机制
2020/09/27 Python
Python3.9新特性详解
2020/10/10 Python
Python txt文件如何转换成字典
2020/11/03 Python
用python计算文件的MD5值
2020/12/23 Python
HTML5 b和i标记将被赋予真正的语义
2009/07/16 HTML / CSS
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
泰坦健身器材:Titan Fitness
2018/02/13 全球购物
俄罗斯女装店:12storeez
2019/10/25 全球购物
Shell如何接收变量输入
2012/09/24 面试题
经济贸易系毕业生求职信
2014/05/31 职场文书
党性观念心得体会
2014/09/03 职场文书
幼儿园小班家长评语
2014/12/30 职场文书
2015年小学一年级班主任工作总结
2015/05/21 职场文书
商场广播稿范文
2015/08/19 职场文书
2019新学期家长会工作计划
2019/08/21 职场文书
2019年公司快递收发管理制度模板
2019/11/20 职场文书