dwz中“查找返回”中文参数值的问题

本文介绍了一种解决DWZ插件在使用GET方式提交含有中文参数时的问题的方法,通过调整为POST提交并修改相关JS代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       这几天使用到dwz中查找返回的插件,发现如果传递有中文参数值时,在服务端就会request不到,而且这种情况出现在chrome和IE。查看了一下源代码,发现最终提交的是以get的方式进行ajax提交,所以会导致中文问题。

       那么我决定对这个查找返回的插件进行改造一下,原本页面上的代码需要这么写,

 

 

<a class="btnLook" 
href="${path}/guidance/doctor/lookUpWithHospital?isLookup=1&likeHospitalName={hospitalName}&likeDoctorName=${model.name }" 
lookupGroup="">查找带回
</a>

 我把这个代码调整为 

<a class="btnLook" 
data="isLookup=1&likeHospitalName={hospitalName}&likeDoctorName=${model.name }"
href="${path}/guidance/doctor/lookUpWithHospital" 
lookupGroup="" 
type="POST" >
查找带回
</a>

 主要是把参数独立出来作为data,并且新增了type的提交方式。

 

 

这里只是调整了页面上的代码,那么js需要怎么调整呢?如下:

  • dwz.database.js文件lookup方法click事件修改如下:
var data = {};
if($this.attr("data"))
    data = unescape($this.attr("data")).replaceTmById($(event.target).parents(".unitBox:first"));
					
var type = $this.attr("type") || "";
$.pdialog.open(url, "_blank", $this.attr("title") || $this.text(), options , data , type);

其中 data , type为新增

  • dwz.dialog.js文件open方法修改如下:
open:function(url, dlgid, title, options,data,type) {
...
if(dialog) {
...
}
else{
...
jDContent.loadUrl(url, data, function(){
....
},type);
.....
}
}

 其中data 和 type为新增

  • dwz.core.js文件loadUrl方法修改为如下:
loadUrl: function(url,data,callback,type){
	$(this).ajaxUrl({url:url, data:data, callback:callback , type:type});
}

其中: type:type为新增

 

       其实这里主要是仿照了列表页搜索的功能(搜索也有查找中文,而且最终也是用了ajax的post方式提交,我们需要思考为什么这样就不会出现中文问题呢?)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值