IE 表单 POST 提交的疑问。

myy 2004-08-20 10:08:26
IE中用post方式提交表单,比如表单上有TextArea,里面有许多中文、回车换行、&、? 等特殊字符时,它是如何保证服务器端脚本能正确按“名称=值”分解的,有没有经过什么编码处理呢?

我知道IE Get方式提交表单会做一些编码,比如 ...%20%EF%2A...
...全文
263 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ice_berg16 2004-08-20
  • 打赏
  • 举报
回复
具体算法可以查看相关文档
http://www.w3schools.com/html/html_ref_urlencode.asp
zltostem 2004-08-20
  • 打赏
  • 举报
回复
escape 方法
请参阅
encodeURI 方法 | encodeURIComponent 方法 | String 对象 | unescape 方法

应用于: Global 对象
要求
版本 1
对 String 对象编码以便它们能在所有计算机上可读,

escape(charString)
必选项 charstring 参数是要编码的任意 String 对象或文字。

说明
escape 方法返回一个包含了 charstring 内容的字符串值( Unicode 格式)。所有空格、标点、重音符号以及其他非 ASCII 字符都用 %xx 编码代替,其中 xx 等于表示该字符的十六进制数。例如,空格返回的是 "%20" 。

字符值大于 255 的以 %uxxxx 格式存储。

注意 escape 方法不能够用来对统一资源标示码 (URI) 进行编码。对其编码应使用 encodeURI 和encodeURIComponent 方法。

---------------------------------

unescape 方法
请参阅
DecodeURI 方法 | decodeURIComponent 方法 | escape 方法 | String 对象

应用于:Global 对象
要求
版本 1
解码用 escape 方法进行了编码的 String 对象。

unescape(charstring)
必选项 charstring 参数是要解码的 String 对象。

说明
unescape 方法返回一个包含 charstring 内容的字符串值。所有以 %xx 十六进制形式编码的字符都用 ASCII 字符集中等价的字符代替。

以 %uxxxx 格式(Unicode 字符)编码的字符用十六进制编码 xxxx 的 Unicode 字符代替.

注意 unescape 方法不能用于解码统一资源标识码 (URI)。解该码可使用 decodeURI 和 decodeURIComponent 方法。

--------------

参考 ~~~
硅与神经元 2004-08-20
  • 打赏
  • 举报
回复
在客户端提交前 textarea.value=escape(textarea.value)
在服务器接收后 content = unescape(request.form("textarea"))
这样textarea中的内容就安全的提交到了content变量中。
zltostem 2004-08-20
  • 打赏
  • 举报
回复
某些特殊的处理?
硅与神经元 2004-08-20
  • 打赏
  • 举报
回复
可以用javascript 函数escape() 和 unescape() 处理以下。
myy 2004-08-20
  • 打赏
  • 举报
回复
谢谢各位老大。

表单提交都会经过url编码的,具体是如何编码的呢?
bananasmiling 2004-08-20
  • 打赏
  • 举报
回复
表单提交都会经过url编码的,这样IE的内部处理..
ice_berg16 2004-08-20
  • 打赏
  • 举报
回复
表单提交都会经过url编码的
bananasmiling 2004-08-20
  • 打赏
  • 举报
回复
这是正常的..在页面的下方可以看到你提交的数据..
什么是SWFUpload?   SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统标签的文件上传模式。 [编辑本段]SWFUpload的主要特点   * 可以同时上传多个文件;   * 类似AJAX的无刷新上传;   * 可以显示上传进度;   * 良好的浏览器兼容性;   * 兼容其他JavaScript库 (例如:jQuery, Prototype等);   * 支持Flash 8和Flash 9;   SWFUpload不同于其他基于Flash构建的上传工具,它有着优雅的代码设计,开发者可以利用XHTML、CSS和JavaScript来随心所欲的定制它在浏览器下的外观;它还提供了一组简明的JavaScript事件,借助它们开发者可以方便的在文件上传过程中更新页面内容来营造各种动态效果。   在使用SWFUpload之前,请确认你具备一定的JavaScript和DOM知识。在实际开发中,大部分的错误都是由于错误的设置和低劣的Event Handlers处理程序所造成的。 [编辑本段]文档中文翻译   http://www.v-sky.com/doc/swfupload/v2.1.0/Documentation.html [编辑本段]效果演示   * Classic Form Demo http://demo.swfupload.org/formsdemo ;   * Features Demo http://demo.swfupload.org/featuresdemo ;   * Application Demo http://demo.swfupload.org/applicationdemo ;   * v1.0.2 Plugin Demo http://demo.swfupload.org/v102demo ; [编辑本段]选择合适的Flash控件   在发行包(SWFUpload v2)中含有2个版本的Flash控件(swfupload_f8.swf 与wfupload_f9.swf),其中第一个版本拥有最佳的兼容性,但是为此损失了部分功能;而第二个版本提供了一些附加的功能但是损失了兼容性。 [编辑本段]SWFUpload的初始化与配置   首先,在页面中引用SWFUpload.js ,如      然后,初始化SWFUpload ,如   var swfu;   window.onload = function () {   swfu = new SWFUpload({   upload_url : "http://www.swfupload.org/upload.php",   flash_url : "http://www.swfupload.org/swfupload_f9.swf", file_size_limit : "20480"   });   };   以下是一个标准的SWFUpload初始化设置所需的参数,你可以根据需要自己进行删减:   {   upload_url : "http://www.swfupload.org/upload.php", 处理上传请求的服务器端脚本URL   file_post_name : "Filedata", 是POST过去的$_FILES的数组名   post_params : {   "post_param_name_1" : "post_param_value_1",   "post_param_name_2" : "post_param_value_2",   "post_param_name_n" : "post_param_value_n"   },   file_types : "*.jpg;*.gif", 允许上传的文件类型   file_types_description: "Web Image Files", 文件类型描述   file_size_limit : "1024", 上传文件体积上限,单位MB   file_upload_limit : 10, 限定用户一次性最多上传多少个文件,在上传过程中,该数字会累加,如果设置为“0”,则表示没有限制   file_queue_limit : 2, 上传队列数量限制,该项通常不需设置,会根据file_upload_limit自动赋值   fl

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧