`
yanjie_1206
  • 浏览: 7602 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

url路径中特殊字符的转换,通过JS转换,并且打开

 
阅读更多

碰到的问题场景:

上传了个文件,但文件名称中含有特殊字符,例如&,#.

现在要将这个字符转换成URL认识的样子,并且不影响下载后的文件名称

 

function getContextPath() {
var pathName = document.location.pathname;
var index = pathName.substr(1).indexOf("/");
var result = pathName.substr(0,index+1);
return result;
}

function formatUrl(url){
url = url.replace(/&/g,"%26");
url = url.replace(/#/g,"%23");
//url = escape(url);
alert(url);
url = getContextPath()+"/FileDownLoadService?filename="+url;
alert(url);
var elemIF = document.createElement("iframe");
elemIF.src = url;
elemIF.style.display = "none";
document.body.appendChild(elemIF);
//alert('xx');
//window.open(url);
}

 

js替换特殊字符及取小数点处理

 

function Check(s) {2var str = s.replace(/%/g, "%25 ").replace(/\+/g,"%2B ").replace(/\s/g,"+ ");// % + \s 3

str = str.replace(/-/g, "%2D").replace(/\*/g, "%2A ").replace(/\//g, "%2F ");// - * / 4

str = str.replace(/\&/g, "%26").replace(/!/g, "%21 ").replace(/\=/g,"%3D ");// & ! = 5

str = str.replace(/\?/g, "%3F").replace(/:/g, "%3A ").replace(/\|/g,"%7C ");// ? : | 6

str = str.replace(/\,/g, "%2C").replace(/\./g, "%2E ").replace(/#/g,"%23 ");// , . # 7

return str;8 }

 

小数点特殊处理

var Digit = {}; 2/** 3* 四舍五入法截取一个小数 4*

@param float digit 要格式化的数字 5*

@param integer length 要保留的小数位数 6*

@return float 7*/

<br /> 8

Digit.round = function(digit, length) { 9

length = length ? parseInt(length) : 0;10

if (length <=0) return Math.round(digit);11

digit = Math.round(digit * Math.pow(10, length)) / Math.pow(10, length);12

return digit;13

};14 /**15* 舍去法截取一个小数16* @param float digit 要格式化的数字17* @param integer length 要保留的小数位数18* @return float19*/20

Digit.floor = function(digit, length) {21

length = length ? parseInt(length) : 0;22

if (length <= 0)return Math.floor(digit);23

digit = Math.floor(digit * Math.pow(10, length)) / Math.pow(10, length);24

return digit;25};26 /**27* 进一法截取一个小数28* @param float digit 要格式化的数字29* @param integer length 要保留的小数位数30* @return float31*/32

Digit.ceil = function(digit, length) {33

length = length ? parseInt(length) : 0;34

if (length <= 0) return Math.ceil(digit);35

digit = Math.ceil(digit * Math.pow(10, length)) / Math.pow(10, length);36

return digit;37};38 39 // 使用方法40

var num = 1.2345;41

document.write("数字:" + num +"<br />");42

document.write("四色五入法:<br />");43

document.write(num + " 保留3位小数:" + Digit.round(num,3) + "<br />");44

document.write(num + " 保留2位小数:" + Digit.round(num,2) + "<br />");45

document.write("舍去法:<br />");46

document.write(num + " 保留3位小数:" + Digit.floor(num,3) + "<br />");47

document.write(num + " 保留2位小数:" + Digit.floor(num,2) + "<br />");48

document.write("进一法:<br />");49

document.write(num + " 保留3位小数:" + Digit.ceil(num,3) + "<br />");50

document.write(num + " 保留2位小数:" + Digit.ceil(num,2) + "<br />")

 

 

连接地址编写方式

<a href="javascript: formatUrl('${att.filename}')"

分享到:
评论

相关推荐

    利用JS把URL地址栏%20、%55之类编码转成中文字符

    利用JS把URL地址栏%20、%55之类编码转成中文字符!

    从URL中提取参数与将对象转换为URL查询参数的实现代码

    对于一个真实的URL地址,可以用js来读取location中的相关信息来获得某些信息,下面列举一些: 代码如下: location.origin : http://localhost【域】 location.pathname : /project_js/Javascript/js_basic/demo/...

    100个直接可以拿来用的JavaScript实用功能代码片段(1-10)

    1、原生JavaScript实现字符串长度截取 2、原生JavaScript获取域名主机 3、原生JavaScript清除空格 4、原生JavaScript替换全部 5、原生JavaScript转义html标签 6、原生JavaScript还原html标签 7、原生JavaScript时间...

    js-base64-file:节点加载,转换和保存本地和远程文件为base64图像或文件。 非常适合图像数据uri使用!

    Node.js的Base64文件加载,转换和保存这是将本地和远程文件加载并转换为base64用作字符串或保存在磁盘上的理想方法。 这适用于所有文件类型! 安装npm i js-base64-file类方法方法参数描述加载路径,文件名,回调...

    正则表达式经典实例.pdf

     学习如何在URL、路径、标记语言和数据交换中使用正则  表达式;  学习更高深的正则表达式特性中的微妙之处;  理解在不同语言中正则表达式的APl、语法和行为之间的  区别;  创建更好的正则表达式来满足个性...

    正则表达式经典实例

     学习如何在URL、路径、标记语言和数据交换中使用正则  表达式;  学习更高深的正则表达式特性中的微妙之处;  理解在不同语言中正则表达式的APl、语法和行为之间的  区别;  创建更好的正则表达式来满足...

    angular-url-parser:用于将 URL 解析为其组件(如协议、主机名或路径名)的角度过滤器

    它将 URL 字符串转换为具有其组件的对象。 安装 bower install --save angular-url-parser 解析器 解析器使用基于的的锚 ( &lt;a&gt; ) DOM 元素的 URL 解析器。 提取以下组件: 协议 用户名 密码 主机名 港口 主机...

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例

    对输入JS进行转换 寻找两个函数所有不同的元素 寻找两数组所有不同元素 得到文件类型 截取字符串中两个特定唯一字符之间的内容 截取指定长度字符串 折线图 按照比例改变图片大小(非生成缩略图) 收藏主页 ...

    net实用类50个常用方法升级版分页

    再次声明 千万不要把... 在使用验证码的页面直接写 img src="这个页面的路径" 注意验证码保存在 Session["CheckCode"]中 这里是区分大小写的 ///ElseColorRGB()由于QQ截图的取色会出现RGB的颜色 这里能转换成16进制

    net实用类50超级实用方法赠分页

    再次声明 千万不要把... 在使用验证码的页面直接写 img src="这个页面的路径" 注意验证码保存在 Session["CheckCode"]中 这里是区分大小写的 ///ElseColorRGB()由于QQ截图的取色会出现RGB的颜色 这里能转换成16进制

    商用版本文本编辑器DotNetTextBoxV6.0.8Source 源码

    3)修正插入特殊字符中有三个特殊字符插入后变为?号的BUG! 4)修正插入Flash的时候无法使用绝对全路径的BUG! 5)修正自动保存的图片没法加入水印的问题。 6)修正自动保存图片功能开启后,内容中带有视频内容提交会出错的...

    net实用类50超级实用方法赠分页分页控件强大的分页

    在使用验证码的页面直接写 img src="这个页面的路径" 注意验证码保存在 Session["CheckCode"]中 这里是区分大小写的 ///ElseColorRGB()由于QQ截图的取色会出现RGB的颜色 这里能转换成16进制 分页控件详情请看...

    .net50个常用方法简单华丽的分页控件功能大的分页控件 50个实用方法

    在使用验证码的页面直接写 img src="这个页面的路径" 注意验证码保存在 Session["CheckCode"]中 这里是区分大小写的 ///ElseColorRGB()由于QQ截图的取色会出现RGB的颜色 这里能转换成16进制 分页控件详情请看...

    browsershot:将html转换为图像,pdf或字符串

    使用无头Chrome将网页转换为图像或pdf 该软件包可以将网页转换为图像或pdf。 转换是由在后台完成的, 控制着无头版本的Google Chrome。 这是一个简单的例子: use Spatie \ Browsershot \ Browsershot ;// an image ...

    pyufp:ufp 库 python 版本。 各种方便的功能集合

    量化应用于灰度图像更改图像颜色深度从图像边缘提取高频颜色从图像中删除边距通过限制搜索深度递归遍历路径移动文件夹的所有内容以指定格式的字符串获取文件的最后修改时间合并父路径和子路径获取目录中经过过滤的...

    《javaScrip开发技术大全》源代码

    • sample39.htm 执行字符串中的JavaScript代码 • sample40.htm 判断对象属性是否为自有属性 • sample41.htm 判断一个对象是否是另一个对象的原型对象 • sample42.htm 判断对象...

    javascript操作XML

    var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") 'JAVASCRIPT中的创建对象 set objXml=CreateObject("Microsoft.XMLDOM") '创建解析器对象 objXml.async="false" objXml.load("test.xml") '装载xml文件 ...

    经典JavaScript正则表达式实战

    替换文本中的URL为链接... 21 从HTML代码段删除指定标签极其内容... 21 用正则给文本分段... 22 转换源代码中的标签... 22 给属性添加双引号... 23 给table加上tbody. 25 去掉标签的所有属性... 25 正则替换特定单词...

    hosted-git-info:提供Github,Bitbucket和Gitlab的元数据和来自存储库URL的转换

    这将使您能够识别和转换协议之间的各种git主机URL。 它还可以告诉您特定文件的原始路径的URL是什么,无需git即可直接访问。 例子 var hostedGitInfo = require ( "hosted-git-info" ) var info = hostedGitInfo . ...

    xheditor-1.1.14

    参数:字符串的URL地址,用以解决前后台不在同一路径的资源定位问题 备注:1.1.0新添加 urlType:本地URL地址强制转换方式选择 参数:abs(绝对路径),root(根路径),rel(相对路径) 备注:1.0.0 beta2新添加,v1.1.0版中...

Global site tag (gtag.js) - Google Analytics