ajax post get方式提交数据详解

ajax有两种提交数据的方式,分别为get和post。post方法可传输大于2K的数据,在Ajax里的应用不同之处在于:"post方法的请求地址与传输的数据是放在两个对象里—-请求地址放在open对象里,传输的数据放在send对象里;并且在传输数据之前定义一个传输文件HTTP头信息(setRequestHeader)"

用上循环就是为了在数据发送前进行合理的处理,解决在脚本语言对数据进行另外需求处理时出现的超时现象。处于对ajax认识未深,如有说得不对或不到位的,还请指教。

    ajax中的post方法有三个参数,前两个 参数是必须的,第三个参数根据需求而定。下图中画红色部分,如果你本身的编码就是utf8的就可以不用了。因为ajax本身默认的传送值以及本身都是用utf8编码,如果你用的是gbk编码则需要在数据传送之前进行转码。

  

  但是在服务器处理语言中还需要相应的转码配合,如

<SCRIPT LANGUAGE="网页特效">
function saveUserInfo(){
//获取接受返回信息层
var msg = document.getElementById("msg");
var f = document.user_info;
var userName = f.user_name.value;
var userAge = f.user_age.value;
var userSex = f.user_sex.value;
//接收表单的URL地址
var url = "commit.php教程";
//需要POST的值,把每个变量都通过&来联接
var postStr = "name="+ userName +"&age="+ userAge +"&sex="+ userSex;
//实例化Ajax
var ajax = null;
if(window.XMLHttpRequest){
ajax = new XMLHttpRequest();
}
else if(window.ActiveXObject){
ajax = new ActiveXObject("Microsoft.XMLHTTP");
}
else{
return;
}
//通过Post方式打开连接
ajax.open("POST", url, true);
//定义传输的文件HTTP头信息
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//发送POST数据
ajax.send(postStr);
//返回数据的处理函数
ajax.onreadystatechange = function(){
if (ajax.readyState == 4 && ajax.status == 200){
msg.innerHTML = ajax.responseText;
}
}
}
</SCRIPT>
<form name="user_info">
姓名:<input type="text" name="user_name" /><br/>
年龄:<input type="text" name="user_age" /><br/>
性别:<input type="text" name="user_sex" /><br/>
<input type="button" value="提交表单" onClick="saveUserInfo()">
</form>
//构建一个接受返回信息的层:
<div id="msg"></div>

时间: 2024-10-25 15:33:02

ajax post get方式提交数据详解的相关文章

php curl中x-www-form-urlencoded与multipart/form-data 方式 Post 提交数据详解

multipart/form-data 方式 post的curl库,模拟post提交的时候,默认的方式 multipart/form-data ,这个算是post提交的几个基础的实现方式. $postUrl = ''; $postData = array(     'user_name'=>$userName,     'identity_no'=>$idCardNo ); $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $postUr

JavaScript中的ajax功能的概念和示例详解_javascript技巧

AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML). 个人理解:ajax就是无刷新提交,然后得到返回内容. 对应的不使用ajax时的传统网页如果需要更新内容(或用php做处理时),必须重载整个网页页面. 示例: html代码如下 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>

jQuery Ajax 全局调用封装实例代码详解_jquery

有一种情况:全站都要用异步方式来调用 数据,提交数据,那么你每次操作 都会要$.ajax({.....}) 写重复的方法 和代码,冗余太大, 也浪费时间,虽说你有代码自动提示补全,但真的不优雅,身为前端极客,是不能允许的! [嘿嘿!虽说我现在基本不用jquery了 ,不过异步概念 是永远要用的,就帮助下新人] jQuery Ajax通用js封装 第一步:引入jQuery库 <script type="text/javascript" src="/js/jquery.mi

MySQL数据库使用mysqldump导出数据详解_Mysql

mysqldump是mysql用于转存储数据库的客户端程序.它主要产生一系列的SQL语句,可以封装到文件,该文件包含有所有重建您的数据库所需要的 SQL命令如CREATE DATABASE,CREATE TABLE,INSERT等等.可以用来实现轻量级的快速迁移或恢复数据库.是mysql数据库实现逻辑备份的一种方式. 在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工具:它自带的功能参数非常多,文章中会列举出一些常用的操作,在文章末尾会将所有

新版alexa提交步骤详解 2012附图完整版本

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 网站排名已经成为一个网站重要标准,尽管排名数据与实际有一定的出入,但是用他来大体衡量一个网站的价值效果还是可靠的.要让客户感觉你的网站是正规的就很有必要向ALEXA提交下你的网站信息,近来小编也新弄了一个关于移动硬盘的站点,去ALEXA提交信息却发现ALEXA和原来提交方法不同了,可幸的是鄙人英语水平还一般,不一会就找到方法,并成功提交了,接

ajax-如何不通过&amp;amp;lt;form&amp;amp;gt;方式提交数据,同时又刷新整个页面

问题描述 如何不通过<form>方式提交数据,同时又刷新整个页面 <form method="post" action="test.php"> ... <input type="submit" /> </form> 通过表单 方式提交表单数据后,整个页面刷新,URL变成test.php. var xhr = new XMLHttpRequest(); xhr.open("post"

oracle10g 手动创建数据详解(linux)下

本文紧跟上篇内容. <oracle10g 手动创建数据详解(linux)上>       http://www.cnblogs.com/fnng/archive/2012/07/19/2600167.html 考虑篇幅过长不易于阅读,所以分个上下两节来进行.这一节中重点解决上一节中第四步与第九步的难题.   设置参数文件与创建数据库命令                                                       如何获得一个的参数文件pfile 呢? 1.问or

ci检测是ajax还是页面post提交数据的方法_php实例

本文实例讲述了ci检测是ajax还是页面post提交数据的方法.分享给大家供大家参考.具体实现方法如下: 一.问题: 因为项目需要我们希望知道提交数据来源是由ajax提交过来的数据还是由页面的post提交过来的数据从而进行不同层面上的处理. 二.解决方法: 在php中解决方法如下: 如果是ajax请求,以下表达式的值为真 复制代码 代码如下: $_SERVER["HTTP_X_REQUESTED_WITH"]=="XMLHttpRequest" 就是一个PHP的环境

使用Post方式提交数据到Tomcat服务器的方法_java

我在上一篇文章中介绍了 使用Get方式提交数据到Tomcat服务器,这篇将介绍使用Post方式提交数据到服务器,由于Post的方式和Get方式创建Web工程是一模一样的,只用几个地方的代码不同所以,我就直接介绍不同的地方,第一个不同点是,提交方式不同,所以修改LoginServlet.Java中的代码 package com.fyt.org; import java.io.IOException; import java.io.OutputStream; import java.io.Print