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之querySelector和querySelectorAll使用说明
Oct 09 Javascript
jQuery EasyUI API 中文文档 - Dialog对话框
Nov 15 Javascript
jQuery ui插件的使用方法代码实例
May 08 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
Sep 24 Javascript
JavaScript中的值是按值传递还是按引用传递问题探讨
Jan 30 Javascript
Struts2+jquery.form.js实现图片与文件上传的方法
May 05 Javascript
jQuery Ajax全解析
Feb 13 Javascript
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
Aug 04 jQuery
PHP自动加载autoload和命名空间的应用小结
Dec 01 Javascript
详解webpack中的hash、chunkhash、contenthash区别
Jan 05 Javascript
bootstrap中selectpicker下拉框使用方法实例
Mar 22 Javascript
Vue vm.$attrs使用场景详解
Mar 08 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
DC《神奇女侠2》因疫情推迟上映 温子仁新恐怖片《恶性》撤档
2020/04/09 欧美动漫
php $_SERVER当前完整url的写法
2009/11/12 PHP
php快速url重写更新版[需php 5.30以上]
2010/04/25 PHP
php读取torrent种子文件内容的方法(测试可用)
2016/05/03 PHP
新浪微博字数统计 textarea字数统计实现代码
2011/08/28 Javascript
jquery动画2.元素坐标动画效果(创建一个图片走廊)
2012/08/24 Javascript
常用的几段javascript代码分享
2014/03/25 Javascript
基于jquery实现全屏滚动效果
2015/11/26 Javascript
Bootstrap3制作搜索框样式的方法
2016/07/11 Javascript
Angularjs 实现分页功能及示例代码
2016/09/14 Javascript
BootStrap 弹出层代码
2017/02/09 Javascript
Vue自定义指令拖拽功能示例
2017/02/17 Javascript
vue调用高德地图实例代码
2017/04/28 Javascript
Vue如何实现组件的源码解析
2017/06/08 Javascript
React服务端渲染(总结)
2017/07/01 Javascript
Angular弹出模态框的两种方式
2017/10/19 Javascript
layui表格内放置图片,并点击放大的实例
2019/09/10 Javascript
Vue.js获取手机系统型号、版本、浏览器类型的示例代码
2020/05/10 Javascript
[02:07]DOTA2超级联赛专访BBC:难忘网吧超神经历
2013/06/09 DOTA
python中matplotlib实现最小二乘法拟合的过程详解
2017/07/11 Python
Python IDLE清空窗口的实例
2018/06/25 Python
python实现泊松图像融合
2018/07/26 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
python从子线程中获得返回值的方法
2019/01/30 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
django 邮件发送模块smtp使用详解
2019/07/22 Python
Python3+selenium实现cookie免密登录的示例代码
2020/03/18 Python
python实现自动打卡的示例代码
2020/10/10 Python
python快速安装OpenCV的步骤记录
2021/02/22 Python
HTML5实时语音通话聊天MP3压缩传输3KB每秒
2019/08/28 HTML / CSS
饿了么订餐官网:外卖、网上订餐
2019/06/28 全球购物
财务管理专业推荐信
2013/11/19 职场文书
监察建议书范文
2014/03/12 职场文书
银行服务理念口号
2015/12/25 职场文书
诚信高考倡议书
2019/06/24 职场文书
Kubernetes关键组件与结构组成介绍
2022/03/31 Servers