jQuery get和post 方法传值注意事项


Posted in Javascript onNovember 03, 2009

刚刚做了几个实验,看看下面的代码就清楚了:
以下内容需要回复才能看到
jquery_data.php

<?php 
echo "post: "; 
print_r($_POST); 
echo "get: "; 
print_r($_GET); 
?>

jquery_test.html
实验1:
$(function() 
{ 
// post 方法,两处都有数据 
$.post('jquery_data.php?v1=1', {v2: 2}, function(data) 
{ 
$('<pre/>').append(data).appendTo('body'); 
}); 
}); 
/*

返回结果:
post: Array
(
[v2] => 2
)
get: Array
(
[v1] => 1
)
*/
实验2:
$(function()
{
// post 方法,数据在地址后面, 第二个参数为回调函数
$.post('jquery_data.php?v1=1', function(data)
{
$('<pre/>').append(data).appendTo('body');
});
});
/*
返回结果,数据在 get 中:
post: Array
(
)
get: Array
(
[v1] => 1
)
*/
实验3:
$(function()
{
// get 方法,用 data 参数传值
$.get('jquery_data.php', {v2: 2}, function(data)
{
$('<pre/>').append(data).appendTo('body');
});
});
/*
返回结果,数据在 get 中:
post: Array
(
)
get: Array
(
[v2] => 2
)
*/
实验4:
$(function()
{
// get 方法,两处都有数据
$.get('jquery_data.php?v1=1', {v2: 2}, function(data)
{
$('<pre/>').append(data).appendTo('body');
});
});
/*
返回结果,两处数据被合并了,都在 get 中:
post: Array
(
)
get: Array
(
[v1] => 1
[v2] => 2
)
*/
实验5:
$(function()
{
// get 方法,两处都有数据,且变量名相同
$.get('jquery_data.php?v2=1', {v2: 2}, function(data)
{
$('<pre/>').append(data).appendTo('body');
});
});
/*
返回结果,数据在 get 中,且 data 参数中的数据覆盖了地址后面的数据:
post: Array
(
)
get: Array
(
[v2] => 2
)
*/
通过这几个简单的小例子不难看出,地址后面的数据永远是以 get 形式传递的,无论使用的是 get 方法还是 post 方法;而 data 参数中的数据是根据方法决定传递方式的。
因此,为了避免混淆,建议大家尽量不要把数据写在地址后面,而是统一放在 data 参数中。
当然,如果你想在用 post 方法时,同时利用 get 传值,那么就可以把要以 get 方式传递的数据写在地址后面,把要以 post 方式传递的数据写在 data 参数中。
总之方法是死的,人是活的,怎么用还要看实际情况。子曾经曰过:实践是检验真理的唯一标准。没事做做实验,掌握知识更牢固.
Javascript 相关文章推荐
异步动态加载js与css文件的js代码
Sep 15 Javascript
js中的referrer返回上一页使用介绍
Sep 26 Javascript
实例详解jQuery表单验证插件validate
Jan 18 Javascript
bootstrap 表单验证使用方法
Jan 11 Javascript
微信小程序 仿美团分类菜单 swiper分类菜单
Apr 12 Javascript
vue-cli3.0 特性解读
Apr 22 Javascript
vue如何根据网站路由判断页面主题色详解
Nov 02 Javascript
JS实现鼠标拖拽盒子移动及右键点击盒子消失效果示例
Jan 29 Javascript
vue实现微信获取用户信息的方法
Mar 21 Javascript
jQuery分组选择器简单用法示例
Apr 04 jQuery
微信小程序绘制图片发送朋友圈
Jul 25 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
Aug 07 Javascript
js window.onload 加载多个函数的方法
Nov 02 #Javascript
深入认识javascript中的eval函数
Nov 02 #Javascript
javascript 按回车键相应按钮提交事件
Nov 02 #Javascript
JQuery 解析多维的Json数据格式
Nov 02 #Javascript
javascript(jquery)利用函数修改全局变量的代码
Nov 02 #Javascript
一个可以兼容IE FF的加为首页与加入收藏实现代码
Nov 02 #Javascript
JS OOP包机制,类创建的方法定义
Nov 02 #Javascript
You might like
snoopy PHP版的网络客户端提供本地下载
2008/04/15 PHP
PHP的消息通信机制测试实例
2016/11/10 PHP
PHP巧妙利用位运算实现网站权限管理的方法
2017/03/12 PHP
CI(CodeIgniter)框架视图中加载视图的方法
2017/03/24 PHP
javascript开发随笔一 preventDefault的必要
2011/11/25 Javascript
快速查找数组中的某个元素并返回下标示例
2013/09/03 Javascript
js实现的点击数量加一可操作数据库
2014/05/09 Javascript
原生JavaScript实现瀑布流布局
2020/06/28 Javascript
表单元素值获取方式js及java方式的简单实例
2016/10/15 Javascript
原生JS实现图片翻书效果
2017/02/16 Javascript
nodejs个人博客开发第六步 数据分页
2017/04/12 NodeJs
微信小程序 navbar实例详解
2017/05/11 Javascript
JS同步、异步、延迟加载的方法
2018/05/05 Javascript
angular将html代码输出为内容的实例
2018/09/30 Javascript
vue组件之间通信实例总结(点赞功能)
2018/12/05 Javascript
jQuery判断自定义属性data-val用法示例
2019/01/07 jQuery
基于Node.js的大文件分片上传示例
2019/06/19 Javascript
javascript this指向相关问题及改变方法
2020/11/19 Javascript
JavaScript构造函数原理及实现流程解析
2020/11/19 Javascript
多种类型jQuery网页验证码插件代码实例
2021/01/09 jQuery
python使用paramiko模块实现ssh远程登陆上传文件并执行
2014/01/27 Python
python批量读取txt文件为DataFrame的方法
2018/04/03 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
python批量修改ssh密码的实现
2019/08/08 Python
python用quad、dblquad实现一维二维积分的实例详解
2019/11/20 Python
美国体育用品商店:Rally House(NCAA、NFL、MLB、NBA、NHL和MLS)
2018/01/03 全球购物
Oral-B荷兰:牙医最推荐的品牌
2020/02/25 全球购物
美国球迷装备的第一来源:FOCO
2020/07/03 全球购物
会计主管岗位职责
2014/01/03 职场文书
爱国卫生月实施方案
2014/02/21 职场文书
保密承诺书范文
2014/03/27 职场文书
出国导师推荐信
2015/03/25 职场文书
利用python做表格数据处理
2021/04/13 Python
gateway网关接口请求的校验方式
2021/07/15 Java/Android
MySQL数据库表约束讲解
2022/06/21 MySQL
vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案
2022/08/05 Vue.js