写在前面:

  最近在项目中,遇到一个问题,在点击一个超链接时,页面报错。通过浏览器调试就可以知道发送的请求参数是不完整的,因为参数中含有特殊字符。所以就报错啦~~

原代码,不能正确发送含有特殊字符的参数:

<a href="<%=request.getContextPath()%>/kmsDisplayModifyMappingAction.do?mapping_id=<%=kmdb.getMapping_id()%>&k_projectname=<%=kmdb.getK_projectname()%>&projectcode=<%=kmdb.getProjectcode()%>" >modify</a>

其中k_projectname中是含有特殊字符的,比如#,在发送请求的时候就不能被识别,需要对其进行转义。

修改后的代码:

<script type="text/javascript">
/* 超链接请求特殊字符转换 */
function formatSpecial(mapping_id,k_projectname,projectcode){
//alert(k_projectname);
var str = k_projectname.replace(/\"/g,'%22').replace(/\#/g,'%23').replace(/\'/g,'%27').replace(/\?/g,'%3F').replace(/\&/g,'%26').replace(/\=/g,'%3D');
//alert(str2);
location.href = "<%=request.getContextPath()%>/kmsDisplayModifyMappingAction.do?mapping_id="+mapping_id+"&k_projectname="+str+"&projectcode="+projectcode+"";
}
</script>
<a href="javascript:void(0);" onclick="formatSpecial('<%=kmdb.getMapping_id()%>','<%=kmdb.getK_projectname()%>','<%=kmdb.getProjectcode()%>')">modify</a>

主要思路是在点击超链接之前,对需要传递的参数在js函数中进行转义处理,将含有的特殊字符用replace()方法进行转义替换,在处理完成之后,再发送请求就好啦~~~~~

  其中/\"/g的意思是/pattern/,代表的是正则表达式的界定符号,\表示转义,\"表示",g表示匹配所有的,不写的话只回匹配替换第一个。

  

交流群:527038646  嘻嘻嘻

javaWeb超链接(href)请求-特殊字符处理的更多相关文章

  1. springMVC框架在js中使用window.location.href请求url时IE不兼容问题解决

    是使用springMVC框架时,有时候需要在js中使用window.location.href来请求url,比如下面的路径: window.location.href = 'forecast/down ...

  2. JavaWeb 发送get请求

      JavaWeb 发送get请求 CreationTime--2018年6月20日15点27分 Author:Marydon 1.前提 通过HttpClient来实现 2.具体实现 客户端如何发送请 ...

  3. JavaWeb 发送post请求的2种方式(form、json)

      JavaWeb 发送post请求的2种方式(form.json) CreationTime--2018年6月20日10点15分 Author:Marydon 前提:通过HttpClient来实现 ...

  4. javaWEB总结(14):请求的转发和重定向

    通俗理解请求转发与重定向的流程 通俗的来讲:我们可以把请求转发和重定向当成是一种借钱的情景模式. (1)请求的转发:A向B借钱,B自己没有钱,但是向C借到了钱,并且把钱借给了A.A只向B请求了一次. ...

  5. jquery动态设置图片路径和超链接href属性

    js document.getElementById("myImage").src="hackanm.gif"; jquery $("#img&quo ...

  6. 在超链接href中实现form的提交

    <form name="form1" method="post" action=""> <div class=" ...

  7. Javaweb中的请求路径的相关总结

    重定向和转发相对路径和绝对路径问题 ​ 注意:转发和重定向的URLString前有加 / 为绝对路径 反之为相对路径 1.假设通过表单请求指定的Url资源 action="LoginServ ...

  8. ios网络请求特殊字符&处理

    原文地址:http://www.xuebuyuan.com/2039420.html CFURLCreateStringByAddingPercentEscapes 在作项目的的时候,一般都要用到网络 ...

  9. javaWeb中request请求转发和response重定向

    1.访问资源 运用forward方法只能重定向到同一个Web应用程序中的一个资源. 而sendRedirect方法可以让你重定向到任何URL.  2.request.get Forward代码中的&q ...

随机推荐

  1. MySQL性能建议者mysqltuner.pl和pt-variable-advisor

    [root@etch171 ~]# mysqltuner.pl --host >> MySQLTuner - Major Hayden <major@mhtx.net> > ...

  2. 基础拾遗-----mongoDB操作

    基础拾遗 基础拾遗------特性详解 基础拾遗------webservice详解 基础拾遗------redis详解 基础拾遗------反射详解 基础拾遗------委托详解 基础拾遗----- ...

  3. Java并发之线程管理(线程基础知识)

    因为书中涵盖的知识点比较全,所以就以书中的目录来学习和记录.当然,学习书中知识的时候自己的思考和实践是最重要的.说到线程,脑子里大概知道是个什么东西,但很多东西都还是懵懵懂懂,这是最可怕的.所以想着细 ...

  4. PyCharm教程

    1.PyCharm3.0默认快捷键 2.PyCharm默认模板设置 3.字体设置 1.PyCharm3.0默认快捷键(翻译的)PyCharm Default Keymap 1.编辑(Editing) ...

  5. Did you forget about DBModel.InitializeModel the model [AAAdm] ?

    AIO5安装完毕后登陆出现以下报错:Did you forget about DBModel.InitializeModel the model [AAAdm] ? 说明: 执行当前 Web 请求期间 ...

  6. Kafka设计解析(八)- Exactly Once语义与事务机制原理

    原创文章,首发自作者个人博客,转载请务必将下面这段话置于文章开头处. 本文转发自技术世界,原文链接 http://www.jasongj.com/kafka/transaction/ 写在前面的话 本 ...

  7. HTML基础下

    知识点一: HTML5的标准结构: <!DOCTYPE html> <html lang='en'> <head> <meat charset='utf-8' ...

  8. 项目实战——企业级Zabbix监控实战(一)

    项目实战--企业级Zabbix监控实战 实验一:Zabbix监控的搭建 1.实验准备 centos系统服务器3台. 一台作为监控服务器, 两台台作为被监控节点, 配置好yum源. 防火墙关闭. 各节点 ...

  9. propertychange 不起作用

    兼容性问题.将$("#systemLogSettings td[name='nMaxFileSize'] input").on("input propertychange ...

  10. iframe自适应高度???

    最近在做一个项目,部分内容是iframe嵌套的,结果发现它不能自适应高. 于是乎我就用js iframe.height(iframe里body的高度),然并卵用.后来才发现,子页面(iframe所写的 ...