位置: 编程技术 - 正文

jQuery Ajax传值到Servlet出现乱码问题的解决方法

编辑:rootadmin

推荐整理分享jQuery Ajax传值到Servlet出现乱码问题的解决方法,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

最近在学jquery ui,在做一个小功能的时候需要将前台的值获取到,通过Ajax传递给Servlet,然后再在返回数据结果,但是在Servlet接受参数的时候,通过后台打印,发现接受乱码,代码示例如下:

  我只用的是ajax的get方式传递的,所以上面也只截取了doGet()方法的代码,那么对于乱码,会有哪几种情况呢,我谈一下我的看法,具体每个阶段的方法我会以代码和截图的方式给出:

1.保证jsp网页没有乱码

  首先得确保你的JSP页面没有乱码,具体代码如下:

  这句话添加在网页最顶部就可以了,补充下page指令的两个参数的具体含义,很多人也许会用,但是我觉得还是有必要了解下的:

a.pageEncoding参数

  pageEncoding属性用来指定JSP页面的字符编码,默认为ISO--1,由于该方法不支持中文,所以,如果要指定JSP页面的字符编码方式支持中文编码,则需要将page指令的pageEncoding属性设置为"GB"、"GBk"或"UTF-8"。

b.contentType参数

  contentType属性用来指定JSP页面输出内容的类型和字符编码方式。属性值中的内容类型部分可以为text/html(纯文本HTML页面)、text/plain(纯文本文件)等。

2.保证jQuery Ajax在传递前没有乱码

  下面贴出的Ajax代码,我要给后台传递的参数是get类型,参数名叫criticalword,代码如下:

  正如我代码红色所标记的,你在传递前先alert()弹窗,测测看是不是你的js文件已经乱码,如果是的话,解决方法:

    1.回查上一步是不是没解决

    2.js文件编码问题:在资源管理器用记事本打开js,然后另存为,在编码里选择utf-8

jQuery Ajax传值到Servlet出现乱码问题的解决方法

  如下图:

  当你的第一个弹窗没有乱码,那说明在传给Servlet前没有问题,那个在进入下一步前先做一个准备工作,如上述红色代码所示,先给参数转码:

criticalword:encodeURI(request.term)

  这个转码是为了防止在Servlet中出现接收乱码的函数,形式为:encodeURI(param)

3.保证Servlet在接受Ajax的参数时(request)没有乱码

  到了这一步说明你离成功不远了,只需要先request和resopnse设置编码的方式,然后再解码即可,doGet代码如下:

  其中主要有三个要点:

  a.response.setContentType():用于设置响应回jsp或者Ajax的字符编码。

  b.request.setCharacterEncoding():用于设置接收请求的响应编码。

  c.URLDecoder.decode():此函数需要先导入java.net包,用于对Ajax的编码进行解码。

  完成以上三个步骤后,你可以像我一样,在返回前加一个System.out.println(yourParam)试试,如果是中文那就没问题啦

4.保证Servlet在响应(response)给jsp没有乱码

 其实在第三部的要点b设置好后,其实返回给html或jsp就应该之中文了。

注:如果你用的是post方法,直接在Ajax里加上contentType:application/x-www-form-urlencoded;charset=utf-8就可以了,不需要进行转码。

深入理解bootstrap框架之入门准备 一.bootstrap框架简介Bootstrap是最流行的前端开发框架。什么是框架:开发过程的半成品。bootstrap具有以下重要特性:(1)完整的CSS样式插件(2)丰富的

深入理解bootstrap框架之第二章整体架构 一.整体架构1.CSS-栅格系统把网页宽度均分为等分(保留位精度)——这是bootstrap的核心功能。2.基础布局组件包括排版、按钮、表格、布局、表单

Boostrap实现的登录界面实例代码 Bootstrap它是一个开源的web开发前端框架。这几天我看了下Bootstrap的官方文档。看到其中的Basic-form,突然想实现下登录界面。然后想了下实现的思路,于是

标签: jQuery Ajax传值到Servlet出现乱码问题的解决方法

本文链接地址:https://www.jiuchutong.com/biancheng/380755.html 转载请保留说明!

上一篇:最实用的jQuery分页插件(jquery有哪些)

下一篇:深入理解bootstrap框架之入门准备(深入理解新发展理念,推进供给侧结构性改革心得体会)

  • 小规模纳税人企业所得税计算
  • 出口抵减内销产品应纳税额为什么在借方
  • 开增值税发票折扣折让是什么意思?
  • 员工自己全额承担社保可以在个税申报吗
  • 建筑劳务公司做账分录
  • 母公司给子公司开票会有税务风险吗
  • 非货物贸易核查项下
  • 保修期内免费维修
  • 税控盘抵税账务处理
  • 小规模纳税人按月申报还是按季申报
  • 为什么企业交了社保查不到
  • 已经计提的增值税怎么退
  • 其他综合收益是什么类科目
  • 发票升额需要什么条件
  • 小微企业减免所得税
  • 库存现金进账单会计分录
  • 发票的开具时效为
  • 个人营业执照如何办理社保
  • 纳税能力体现的内容
  • 户外拓展费用入什么科目
  • win10怎么建立多个用户
  • 模具费用如何平摊到产品上
  • 如何手机个人热点连电脑
  • 汇算清缴无形资产摊销填哪里
  • 苹果手机怎么刷机
  • win11安卓子系统在哪打开
  • linux命令行使用鼠标
  • Ant Design Pro(5)-7.高级表格ProTable
  • 用php做一个表格
  • 一般纳税人什么情况下可以开3%的税率
  • 未取得合法有效凭证可以税前扣除
  • 个体工商户与家庭生活难以划分的费用
  • 目标检测如何入门
  • uni-app list
  • 无形资产入账价值包括资本化支出吗
  • 房屋出租房产税如何计算
  • 企业注销未抵扣完的进项税额怎么处理做账
  • 投资收益会计准则
  • vue叠化在哪里
  • 亚伯拉罕湖中的树,加拿大艾伯塔 (© Coolbiere/Getty Images)
  • vue setstate
  • vue怎么打断点
  • 建行企业网上银行主管盾权限分配
  • javascrapt
  • 增值税与消费税中关于包装物押金规定的异同点
  • 工资表中可以出现减号的情况吗
  • 银行手续费和利息会计分录
  • 非货币性资产交换是企业经常发生的
  • 融资租入的固定资产视为自有固定资产
  • 个人抬头的发票可以入账吗
  • 以长期股权投资换入存货
  • 润滑油消费税征收环节税屋
  • 个体工商户要进行汇算清缴吗
  • 收到暂估跨年发票怎么办
  • 企业取得租车发票
  • 哪些计入研发费用
  • 全额工资和实发工资
  • 抵扣联和发票联的区别
  • 私营企业固定资产法律制度
  • mysql索引类型及原理
  • MySql Error 1698(28000)问题的解决方法
  • win10下mysql 5.7.17 zip压缩包版安装教程
  • win7 64位系统插入磁盘提示“将磁盘插入驱动器”的解决方法
  • win7组织在哪
  • win8打开桌面
  • xp系统如何配置ip
  • windows模拟器(可安装电脑软件)
  • sudo service: command not found 报错的解决方法
  • win7调出ie浏览器
  • linux确认命令
  • glsl 函数
  • cocos2dx-3.x(三)、场景切换及可能产生的错误
  • python搜索引擎网络爬虫
  • unitytest
  • 简单的智能家居
  • easyui toolbar布局
  • 总局公告2011年第34号
  • 江苏电子税务局官网登录入口
  • 车辆购置税免税条件
  • 如何理解涉税零风险概念
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设