关于提交form表单JSON返回不显示提示框的解决办法

本文介绍如何解决使用Ajax提交表单后,后台接收到的数据出现乱码的问题。通过调整Ajax请求方式为GET,并在后台进行正确的字符集转换,成功解决了编码问题。

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

用Input框 Type=submit  提交表单后,后台返回JSON不提示的问题.

解决方法. 给 提交按钮 写上点击事件.用 ajax提交

 具体代码如下

1.js代码.代码里的选择器是html:form标签的选择器.因为html:form标签没有id.只能写styleId,这个styleId就类似于Name属性

所以我用的是name选择器.styleId的值是对应struts config里的<action 标签的 Name属性值.不是乱写的最下边有图.

function submitForm(){
         jQuery($("form[name='pictureForm']")).ajaxSubmit({
            success : function(data) {
                 if (data.success) {
                        alert(data.msg);
                        window.location = data.url;
                    } else {
                        alert(data.msg);
                    }
            }
        }); 
}

这里是html:form标签

这里是struts config里的 action

ps:追加..这样写完我发现提交的代码form表单里的Input框内容是乱码的.

这就意味着用ajax提交form表单他会修改你的编码集.最后试了很多方式才正确解码.

1:你要把ajax改成get方式.ajax的get方式提交编码集他会改成 iso8859-1 这样我们知道了编码集就容易解码了;

2:在后台接收代码的地方

		String publisher = request.getParameter("publisher");//发布者
            publisher = new String(publisher.getBytes("iso8859-1") ,"utf-8" );

这样就好了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值