碰到的问题场景:
上传了个文件,但文件名称中含有特殊字符,例如&,#.
现在要将这个字符转换成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}')"
相关推荐
在JavaScript中,我们可以通过编写函数来处理这些特殊字符的编码问题。比如文章中提供的`exchangeCode`函数,这个函数的作用就是将URL中不能直接传递的特殊字符进行百分号编码。这个函数内部使用了`replace`方法结合...
本文将深入探讨如何使用JavaScript(简称JS)来解码这些URL编码,使其转换回原本的中文或其他非英文字符。 ### URL编码与解码原理 URL编码的主要目的是确保URL中的所有字符都能在网络上传输,避免因特殊字符导致的...
在这个“url编码转换器”中,我们可以看到它主要服务于将这些特殊字符转换为它们在网络传输中安全的表示形式。 在URL中,非字母数字的字符通常会被转换为"%xy"的形式,其中xy是该字符在ASCII码表中的16进制表示。...
URL(Uniform Resource Locator)是互联网上的资源定位器,遵循特定的规范,如RFC 1738,它限制了URL中可以使用的字符集,通常只允许字母、数字、某些标点符号以及一些特殊字符。然而,当URL需要传递特殊字符,尤其...
URL(统一资源定位符)不能包含某些特殊字符,如空格、逗号等,因此需要将这些字符转换为可安全传输的ASCII格式。默认情况下,URL使用UTF-8编码,但不同环境可能有不同的默认编码方式,这可能导致乱码。 1. **...
在处理中文数据时,有时我们需要将中文字符转换为对应的拼音,例如在生成URL路径或者进行语音输入处理时。标题提到的“JavaScript中文转拼音”就是一种这样的技术,它允许开发者将中文字符串转化为拼音形式,以便于...
在互联网世界中,URL(统一资源定位符)是用于定位网络资源的重要工具。然而,当URL参数中包含特殊符号如+、空格、=、%、&...通过遵循上述规则和使用合适的编码函数,我们可以有效解决URL参数中特殊符号带来的问题。
JavaScript将base64图片转换成formData并通过AJAX提交是一项技术需求,通常出现在需要将前端处理得到的图片信息上传到服务器的场景中。base64编码是一种用64个ASCII字符表示任意二进制数据的方法,它常用于在网页中...
然而,URL中不能直接包含所有字符,因为某些字符在URL解析过程中有特殊含义,例如空格通常被转换为加号"+"或"%20"。为了正确传递包含特殊字符的URL,我们需要使用特定的编码方法。 JavaScript提供了一系列的全局...
URL编码主要涉及对URL中的特殊字符进行转换,以避免这些字符在传输过程中引起解析错误或产生歧义。 RFC3986是定义URI语法的官方标准,它规定了URL中哪些字符是安全的,哪些需要进行编码。安全字符包括英文字母(a-...
### JSP中JS传递与解析URL参数及中文转码解码问题详解 #### 一、引言 在Web开发中,尤其是使用Java Server Pages (JSP)进行开发时,经常需要处理URL中的参数,包括参数的传递、解析以及对中文等特殊字符的处理。...
URL编码是将URL中可能引起问题的字符转换为ASCII字符集的等效百分号编码。这包括空格、非ASCII字符以及某些特殊字符,如大括号、引号、尖括号等。例如,空格通常被转换为"%20"。这是因为URL不能包含某些字符,比如...
在本文中,我们将深入探讨如何使用ArcGIS API for JavaScript实现路径分析,并结合百度瓦片地图进行展示。ArcGIS API是一款强大的Web制图工具,它允许开发者在网页上创建交互式的地图应用,包括路线规划、地理编码、...
在JavaScript编程中,经常需要处理URL参数,将URL字符串转换为可操作的对象,以便于访问和操作这些参数。本文将详细介绍如何使用JavaScript实现这一功能,包括ES6、TypeScript(TS)以及ES5的不同实现方式。 首先,...
1. **URL编码原理**:URL编码是按照特定规则将URL中的特殊字符转换为可安全传输的形式。主要遵循的是RFC3986标准,其中规定非字母数字字符(alphanumeric characters)需要转换为"%xy"的形式,xy是对该字符的ASCII值...
在【index.js】中,可能包含了这个库的核心实现代码,包括各种转换函数。这些函数可能包括`base64ToBlob`,用于将base64编码转换为Blob,以及可能的`blobToBase64`,用于将Blob对象转换回base64编码。同时,这个库...
URL编码是一种将非ASCII字符或特殊字符转换为可安全包含在URL中的形式的方法。在JavaScript中,我们可以使用`encodeURIComponent()`、`encodeURI()`和`escape()`函数来编码URL参数。其中,`encodeURIComponent()`是...
在Web开发中,我们经常会遇到需要对URL进行编码和解码的情况,这是因为URL不能包含某些字符,例如空格、引号或者一些特殊符号。下面将详细介绍URL编解码的工作原理和相关知识点。 1. **URL编码** URL编码是一种...
在本例中,我们通过客户端脚本(JavaScript)的方式实现在用户输入特殊字符时即时阻止这些字符被录入。具体来说,当检测到用户试图输入一些预定义的特殊字符时,程序会通过禁用输入框的IME模式,并改变`keyCode`值来...
1. **基本思路**:在JavaScript中,可以利用`encodeURI`方法对包含中文或特殊字符的URL进行编码,将其转换成十六进制格式,从而避免在传输过程中出现乱码。 2. **具体实现**: - 如果URL是在JavaScript代码中动态...