解决带参数的url,会过滤特殊字符的问题

项目有一个公式管理模块:
最终要求
在这里插入图片描述

前两个公式可以顺利的带出,但计算值公式中的
+号被过滤了,

开始页面跳转是这样写的

 //查看
    function toInfo(expressionId){

        var sourceExpression =$("#"+expressionId).find('input').eq(1).val()
        $.modal.openTab("查看", encodeURI("/system/gxqAssessmentanalysis/edit?id="+expressionId+"&sourceExpression="+sourceExpression));
    }

换成这样就可以了

 //查看
    function toInfo(expressionId){

        var sourceExpression =$("#"+expressionId).find('input').eq(1).val()
        $.modal.openTab("查看", "/system/gxqAssessmentanalysis/edit?id="+expressionId+"&sourceExpression="+encodeURIComponent(sourceExpression));
    }
可以使用过滤器(Filter)来过滤特殊字符,具体实现可以参考以下步骤: 1. 创建一个实现了javax.servlet.Filter接口的类,重写doFilter方法,在该方法中对请求参数进行过滤处理。 2. 在springboot的配置类中,使用@Bean注解将该过滤器注册到spring容器中。 3. 在web.xml中配置该过滤器的拦截路径。 具体实现可以参考以下代码: ``` @Component public class SpecialCharacterFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; String param = req.getParameter("param"); if (StringUtils.isNotBlank(param)) { String filteredParam = filterSpecialCharacter(param); req.setAttribute("param", filteredParam); } chain.doFilter(request, response); } private String filterSpecialCharacter(String str) { // 过滤特殊字符的逻辑 return str; } } @Configuration public class WebConfig { @Bean public FilterRegistrationBean<SpecialCharacterFilter> specialCharacterFilter() { FilterRegistrationBean<SpecialCharacterFilter> registrationBean = new FilterRegistrationBean<>(); registrationBean.setFilter(new SpecialCharacterFilter()); registrationBean.addUrlPatterns("/*"); registrationBean.setName("specialCharacterFilter"); registrationBean.setOrder(1); return registrationBean; } } <filter> <filter-name>specialCharacterFilter</filter-name> <filter-class>com.example.SpecialCharacterFilter</filter-class> </filter> <filter-mapping> <filter-name>specialCharacterFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值