uri.js的用法事例

来源于:http://smoothprogramming.com/tutorials/get-set-query-string-values-from-url-using-uri-js/

Get or Set Query String Values from URL using URI.js

URI.js is a mature javascript library for manipulation of URI. URI.js provides methods to get or set query string values using javascript functions on browsers.

Download URI.js or URI.min.js from Official URI.js Github Repository or build it from Here. Add it into your html page for using it in your script.

function to get Query String value from URL using URI.js

JavaScript

<script type="text/javascript" src="/js/URI.js"></script>

function getQueryStringValue(queryParam){
   // Get current URL.
   var currentURL = new URI();

  // If queryParam is in the querystring of currentURL
  if(currentURL.hasQuery(queryParam)){
    // Get all querystring values as a json object
    var qsValues = currentURL.query(true);
    // return queryParam‘s value
    return qsValues[queryParam];
  }
  else
  {
    // queryParam is not in the querystring. So return as undefined.
    return undefined;
  }
}

// If currentURL="http://www.ecommerce.com/product.html?customerId=27" then,
// getQueryStringValue("customerId") returns "27"
// getQueryStringValue("notPresentQueryParam") returns undefined

URI.js Introduction

URI.js offers methods for manipulating URLs. Please see below code to get an intro on few possible operations with URI.js.

JavaScript

// Get current URL from the browser bar.
var url = new URI();
// return http://smoothprogramming.com/tutorials/get-set-query-string-values-from-url-using-uri-js
// This is equivalent to window.location.href command in js.

url = new URI("http://www.smoothprogramming.com:80/tutorials/get-set-query-string-values-from-url-using-uri-js.html");
// Sets URL to http://www.smoothprogramming.com:80/tutorials/get-set-query-string-values-from-url-using-uri-js.html

url;
// return "http://www.smoothprogramming.com:80/tutorials/get-set-query-string-values-from-url-using-uri-js.html"

url.protocol());
// return "http"

url.origin();
// return "http://www.smoothprogramming.com:80"

url.hostname());
// return "www.smoothprogramming.com"

url.host());
// return "www.smoothprogramming.com:80"

url.port());
// return "80"

url.path());
// return "/tutorials/get-set-query-string-values-from-url-using-uri-js.html"

url.directory());
// return "/tutorials"

url.filename());
// return "get-set-query-string-values-from-url-using-uri-js.html"

Get Query String Values

JavaScript

// Querystring values
url = new URI("http://www.ecommerce.com/product.html?customerId=27&checkout=true");

// Get querystring part from URL
url.query();
// returns "customerId=27&checkout=true"

// Get Querystring value as JSON object
url.query(true);
// returns "{"customerId":"27","checkout":"true"}"

//Is customerId in the querystring list ?
url.hasQuery("customerId");
// returns true

//Is dummyQuerystr in the querystring list ?
url.hasQuery("dummyQueryStr");
// returns false

// Is customerId value = 27?
url.hasQuery("customerId", "27");
// returns true

//is customerId value = 50?
url.hasQuery("customerId", "50");
// returns false

Set Query String Values

JavaScript

url = new URI("http://www.ecommerce.com/product.html");

//set customerId as Querystring
url.addQuery("customerId", "27");
//returns "http://www.ecommerce.com/product.html?customerId=27"

//Remove customerId as Querystring
url.removeQuery("customerId");
// returns "http://www.ecommerce.com/product.html"

在线实例:http://codepen.io/hiralbest/pen/kXwPKP

Conclusion

This post has only most useful and important list of methods to manipulate URL using URI.js. If you are interested in detail documentation of all URI.js then, please refer URI.js Documentation Page.

References

URI.js
URI.js Github Repo

时间: 2024-10-20 08:12:29

uri.js的用法事例的相关文章

Js相关用法个人总结

Js相关用法个人总结  js中将数组元素添加到对象中var obj = {}; var pushArr = [11,22,33,44,55,66]; for(var i=0;i<pushArr.length;i++) { obj[i] = pushArr[i]; } obj.length = pushArr.length; console.log(obj); //{0:11,1:22,2:33,3:44,4:55,5:66,length:6} 在js中为对象添加属性和方法 var obj = {

require.js的用法

关于拖延症的话题我在Hacker News上不断的看到有人提出来(你也读了,不是吗?),感觉有必要将我是如何跟拖延症做斗争的方法分享给大家.然而,我这里说的主要是针对程序员/美工,但其实任何人都可以使用.首先最重要的-. 它不是那些老套陈旧的动机心理学扯谈. 我并不是说那些传统的应对拖延症的方法理论不对,只是对我无效.当正经历极度消沉的时候,我通常听到的理论的最后一句话是"You just DO IT!".我有很多的事情要去做.但我不会去阅读你那400页的治疗拖延症手册,也不会执行你那

jquery.cycle.js简单用法实例

样式: a{text-decoration: none;} *{margin:0; padding:0;} /*容器设置*/ .player { width:216px; height:248px; background:url(http://i2.itc.cn/20120117/2cc0_da8f6c82_c8da_693d_7714_9533a013006a_3.jpg) no-repeat; background-color:#ede1d1; position:relative; padd

iScroll.js的用法

一.iScroll.js的用法 概要 iScroll 4 这个版本完全重写了iScroll这个框架的原始代码.这个项目的产生完全是因为移动版webkit浏览器(诸如iPhone,iPad,Android 这些系统上广泛使用)提供了一种本地化的方式来对一个限定了高度和宽度的元素的内容进行滑动.很不幸的是,这种情况下所有的web应用的页面就不能够包含具有position:absolute的头.页尾或者是一个内容可滚动的中间区域. 然而,Android系统最新修订版已经可以支持这种功能了(尽管支持的力

【笔记】关于require.js 的用法

最近忙于学校的一个新网站建设,对于以前的前端程序编写方式的不正规特意上网学习了require.js 的用法,使此次的工程更加有条理同时符合当前前端的开发模式--前端模块化. 网上有不少很好的学习文章这里推荐阮一峰老师的:http://www.ruanyifeng.com/blog/2012/11/require_js.html 下面是本人归纳的一些要点: 1.使用require.js 必须从官网下载 require.js 文件 http://www.requirejs.cn/ 打开官网便可以下载

js webstorm用法

js  webstorm用法 一.什么是webstorm? WebStorm 是jetbrains公司旗下一款JavaScript 开发工具.被广大中国JS开发者誉为“Web前端开发神器”.“最强大的HTML5编辑器”.“最智能的JavaScript IDE”等.与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能. ----------工欲善其事,必先利其器 二.下载和安装? 1.官网下载地址:http://www.jetbrains.com/webstorm

js模块化编程(三):Require.js的用法

转自 ruanyifeng 系列目录: Javascript模块化编程(一):模块的写法 Javascript模块化编程(二):AMD规范 Javascript模块化编程(三):Require.js的用法 介绍了Javascript模块原型和理论概念,今天介绍如何将它们用于实战.我采用的是一个非常流行的库require.js. 一.为什么要用require.js? 最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了.后来,代码越来越多,一个文件不够了,必须分成多

【JS库】URI.js

做前端的,应该有不少人都写过操作URL的代码,比如提取问号后面的参数.或者主机名什么的,比如这样: var url="http://jszai.com/foo?bar=baz", separator=url.indexOf('?') >-1?'&':'?'; url+=separator+encodeURIComponent("foo")+"="+encodeURIComponent("bar"); 这类代码写多

JS 正则表达式用法

JS 正则表达式用法简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证. 替换文本.可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字. 根据模式匹配从字符串中提取一个子字符串.可以用来在文本或输入字段中查找特定文字. JS 正则表达式基本语法 在对正则表达式的功能和作用有了初步的了解之后,我