这里的正确写法:不换行。没空格。千万别换行!
<yyf:pager pageIndex="${pageModel.pageIndex}"
pageSize="${pageModel.pageSize}"
recordCount="${pageModel.recordCount}"
submitUrl="${pageContext.request.contextPath}/employee/findEmployee?pageIndex={0}&dept_id=${employee.dept.id}&name=${employee.name}&card_id=${employee.card_id}&phone=${employee.phone}&sex=${employee.sex}&job_id=${employee.job.id}"/>
<%--submitUrl=""这里的双引号里面的值,千万不要换行,不然传参数时会把"换行而引起的空格也传过去 "
(换行一定要把 & 放在每一行的末尾,但是依然会导致 跳转到 某 页面 不能正常使用。
千万别换行)--%>
错误写法:
在前台还可以看到输入框中多了空格
后台的name=''
也变成了name=' '。多了空格。
即使以 & 结尾也会导致错误。使得翻页功能,不能正常实现。
如下:跳转功能不能实现。
你要是非要换行,参考这篇文章:
通过url进行参数的传递 - 太极面 - 博客园 https://www.cnblogs.com/webzzc/p/11302913.html
通过url进行参数的传递
1、//跳转到page页面并传一个变量customerTaskId
showVideo(index) {
let file = this.fastImgLists[index].id;
console.log(file);
uni.navigateTo({
url: `../page/page?customerTaskId=${_this.dataList[index].customerTaskId}&projectId=${_this.dataList[index].projectId}`
});
},
2、//跳转到page页面并将后台返回的值传递过去
url="跳转页面?参数名="+参数+“&参数名”+参数值
uni.navigateTo({
url: '../page/page?id=' + res.data.id
+ '&name=' + res.data.name
+ '&deviceLocation=' + res.data.deviceLocation
+ '&pageFlag=' + res.data.pageFlag
+ '&device=' + res.data.device
});
已经尝试过此方法在这里不行:
在page页面,进行接收,将值写入相应位置
onLoad(obj) {
console.log(obj);
this.id = obj.id;
this.name = obj.name;
this.deviceLocation = obj.deviceLocation;
this.pageFlag = obj.pageFlag;
this.device = obj.device;
},
来复习一下这个:参考文章:https://blog.csdn.net/lipei1220/article/details/78407596
有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,那么就要使用他们的编码了。下表中列出了一些URL特殊符号及编码
十六进制值 | |||
1. | + | URL 中+号表示空格 | %2B |
2. | 空格 | URL中的空格可以用+号或者编码 | %20 |
3. | / | 分隔目录和子目录 | %2F |
4. | ? | 分隔实际的 URL 和参数 | %3F |
5. | % | 指定特殊字符 | %25 |
6. | # | 表示书签 | %23 |
7. | & | URL 中指定的参数间的分隔符 | %26 |
8. | = | URL 中指定参数的值 | %3D |
解决的方法:
replace() 方法如果直接用str.replace("-","!")只会替换第一个匹配的字符.
而str.replace(/\-/g,"!")则可以替换掉全部匹配的字符(g为全局标志)。
replace()
js中替换字符变量如下:
data2=data2.replace(/\%/g,"%25");
data2=data2.replace(/\#/g,"%23");
data2=data2.replace(/\&/g,"%26");
代码中可以使用
URLEncoder.encode(url, "UTF-8");