js 传递路径参数到后台的转码和解码
在开发中遇到前端页面需要将一个附件的路径传递后台实现业务逻辑,但不进行编码一直报404的错误,上代码。
前端编码:JavaScript函数encodeURL()
说明:1 .encodeURL函数主要是来对URI来做转码,它默认是采用的UTF-8的编码.
2. UTF-8编码的格式:一个汉字来三个字节构成,每一个字节会转换成16进制的编码,同时添加上%号.
var row = $('#tabgrid20170725163633448815').datagrid('getSelected');
if(row != null){
var reportid = row.id;
var fjpath = row.fjpath;
fjpath=encodeURI(fjpath);
var cerson_id = row.create_id;
var cerson_name = row.create_name;
var dept = row.main_dept;
var deptname=row.main_dept_name;
var url="${ctx}/secondPhase/report_content.pt?reportid="+reportid+"&cerson_id="+cerson_id+"&cerson_name="+cerson_name+"&dept="+dept+"&fjpath="+fjpath+"&deptname="+deptname;
url=encodeURI(url);
window.location.href=url;
}
后端解码如下:
String fjpath=(String)dmp.get("fjpath");
if(fjpath!=null){
fjpath=URLDecoder.decode(fjpath,"utf-8");
}
js 传递路径参数到后台的转码和解码的更多相关文章
- JS传递中文参数出现乱码的解决办法
一.window.open() 乱码: JS中使用window.open("url?param="+paramvalue)传递参数出现乱码,提交的时候,客户端浏览器URL中显示参数 ...
- js获取路径参数对象
/** * 获取页面路径参数值 */ function getParams(key) { var result = {}; var paramStr = encodeURI(window.docume ...
- JS 获取 路径参数 传入 参数名 截取 & 和 # 之前 字符
function getQueryStringByName(name) { var result = location.search.match(new RegExp("[\?\&] ...
- bootstrap分页查询传递中文参数到后台(get方式提交)
<!--分页 --> <div style="width: 380px; margin: 0 auto; margin-top: 50px;"> <u ...
- 前台js发请求参数与后台接参数的问题
js函数中写参数,ajax中写参数,示例如下: function informationQuery(sign){//预警详情条件查询 $.get("/detail/informationQu ...
- url中传参数为中文的转码与解码解决方法
1.转码 中文为 “你好” var ProjectName = encodeURI(encodeURI("你好"));,如下图所示 跳转页面 window.location.h ...
- js传递默认形参
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- BASE64-客户端(js)加码-服务器端(c#)解码,URL传递“汉字参数”解决方法
HttpUtility.UrlEncode 在 Encode 的时候, 将空格转换成加号('+'), 在 Decode 的时候将加号转为空格, 但是浏览器是不能理解加号为空格的, 所以如果文件名包含了 ...
- JS加载获取父窗体传递的参数
JS加载获取父窗体传递的参数 $(document).ready(function () { var query = location.search.substring(1); var values ...
- springmvc传递有特殊字符的路径参数
因为hostKey这里是IP(例如127.0.0.1)包含了特殊字符. 实际传递到后台的是127.0.0少了一截 @GetMapping("/metrics/jobId/{jobId}/{ ...
随机推荐
- 如何写成高性能的代码(一):巧用Canvas绘制电子表格
一.什么是Canvas Canvas是HTML5的标签,是HTML5的一种新特性,又称画板.顾名思义,我们可以将其理解为一块画布,支持在上面绘制矩形.圆形等图形或logo等. 需要注意的是,与其他标签 ...
- 利用高级组策略管理AGPM复制组策略GPO
有时候管理多个林,在一个林中配置了GPO之后,想复制出来用到其它林里.默认系统的组策略管理里没有这个功能.但是微软在微软企业桌面优化套件Microsoft Desktop Optimization P ...
- Python-Django模板
前面将hello world输出给浏览器,将数据与 视图 混合在一起,不符合 MVC思想. 模板就是一个文本,用来分离文档的表现形式和内容. 在templates目录下创建一个html模板 然后需要向 ...
- Kubernetes 部署 Nacos 1.4 集群
文章转载自:http://www.mydlq.club/article/104/ 系统环境: Nacos 版本:1.4.1 Mysql 版本:8.0.19 Kubernetes 版本:1.20.1 一 ...
- 第二章:视图层 - 1:URL路由基础
路由的编写方式是Django2.0和1.11最大的区别所在.Django官方迫于压力和同行的影响,不得不将原来的正则匹配表达式,改为更加简单的path表达式,但依然通过re_path()方法保持对1. ...
- 部署文件:filebeat->kafka集群(zk集群)->logstash->es集群->kibana
该压缩包内包含以下文件: 1.install_java.txt 配置java环境,logstash使用 2.es.txt 三节点的es集群 3.filebeat.txt 获取日志输出到kafka集群 ...
- cmd常用命令介绍
一.cdm命令介绍:CMD命令是一种命令提示符,CMD是command的缩写,即命令提示符(CMD),位于C:\Windows\System32的目录下,是在OS/2,Win为基础的操作系统(包括Wi ...
- 自学Spring
Spring官网地址https://spring.io/ springManven官网地址:https://mvnrepository.com------------------------ spri ...
- 【软件学习】如何将Typora中的本地图片上传到博客
1. 配置方法 下载软件: 点击程序输入博客信息进行配置: 进行偏好设置: 2. 配置中出现的一些问题 解决方法:
- kafka详解(二)--kafka为什么快
前言 Kafka 有多快呢?我们可以使用 OpenMessaging Benchmark Framework 测试框架方便地对 RocketMQ.Pulsar.Kafka.RabbitMQ 等消息系统 ...