Form表单提交细节

(42) 2023-10-16 16:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说Form表单提交细节,希望能够帮助你!!!。

  1. 关于提交中文乱码问题

    前一篇文章说Form提交方式,其中通过Ajax 提交方式,有可能会遇到头疼的中文乱码问题。

    你可用通过filter来设置编码格式,也可以通过 http 的content-type 来控制编码,若是JSP 的话,也可通过pageEncoding 来配置编码。

    但是若用 get() 提交方式时,它默认的编码格式ISO-8859-1,所以呢,你必须自己来控制编码,解码的key,来控制编码。如果用post() 提交呢,有可能也会出现乱码。自己使用的方式:使用JavaScript提供的 encodeURI 函数,进行2次编码,传递到后台通过相对应的 decode 函数解码。

    举个例子:jsp+servlet方式。

    比如 js 通过ajax 提交中文时,这样写法:

    var 变量1 =$("#xxx").val()。

    变量1 = encodeURI(encodeURI(变量1));

    传递到后台:Java的方式解码: URLEncoder.encode(变量1,“设置编码方式”)

  2. 自己遇到的不容易发现错误

    js中的函数 function tijiao(){}

    <input type="button" name="tijiao" onclick="tijiao();">

    这样写,网页会报错,js 提示 不支持属性与方法 tijiao

    你会想,我明明定义了tijiao的方法,为啥会出错呢?

    其实:name 的值 不能与定义的函数名重复!!!!!!

  3. 今天写程序遇到删除oracle 中重复的记录,只留下1条

    思想:利用的是oracle 中的rowid , rowid有排序,只留下 小的rowid即可。

    delete from 表1 a

    where (a.列1,a.列2,......) in (select a.列1,a.列2,...... from 表1 group by a.列1,a.列2,...... having count(*)>1) and rowid not in (select min(rowid) from 表1 group by a.列1,a.列2,...... having count(*)>1)

    说明:a.列1,a.列2,...... 是唯一确定 oracle 中记录为重复记录的列。

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复