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 相关文章推荐
JQuery实现自定义对话框的代码
Jun 15 Javascript
文本框倒叙输入让输入框的焦点始终在最开始的位置
Sep 01 Javascript
谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法
Dec 03 Javascript
聊一聊jQuery插件uploadify使用方法
Aug 24 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
Dec 29 Javascript
js获取json中key所对应的value值的简单方法
Jun 17 Javascript
微信小程序实现瀑布流布局与无限加载的方法详解
May 12 Javascript
Angularjs Promise实例详解
Mar 15 Javascript
使用Vue中 v-for循环列表控制按钮隐藏显示功能
Apr 23 Javascript
基于vue-cli搭建多模块且各模块独立打包的项目
Jun 12 Javascript
vuex vue简单使用知识点总结
Aug 29 Javascript
js动态生成表格(节点操作)
Jan 12 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
php获取文件夹路径内的图片以及分页显示示例
2014/03/11 PHP
PHP中使用php://input处理相同name值的表单数据
2015/02/03 PHP
PHP概率计算函数汇总
2015/09/13 PHP
php封装的连接Mysql类及用法分析
2015/12/10 PHP
php 解决substr()截取中文字符乱码问题
2016/07/18 PHP
yii框架无限极分类的实现方法
2017/04/08 PHP
基于PHP实现微信小程序客服消息功能
2019/08/12 PHP
javaScript 数值型和字符串型之间的转换
2009/07/25 Javascript
将函数的实际参数转换成数组的方法
2010/01/25 Javascript
下载网站打开页面后间隔多少时间才显示下载链接地址的代码
2010/04/25 Javascript
表头固定(利用jquery实现原理介绍)
2012/11/08 Javascript
函数式 JavaScript(一)简介
2014/07/07 Javascript
Bootstrap CSS组件之输入框组
2016/12/17 Javascript
详解react服务端渲染(同构)的方法
2017/09/21 Javascript
解决Vue-cli npm run build生产环境打包,本地不能打开的问题
2018/09/20 Javascript
webpack-url-loader 解决项目中图片打包路径问题
2019/02/15 Javascript
layui插件表单验证提交触发提交的例子
2019/09/09 Javascript
微信小程序调用wx.getImageInfo遇到的坑解决
2020/05/31 Javascript
Python的Django框架中从url中捕捉文本的方法
2015/07/20 Python
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
2018/01/11 Python
python定向爬取淘宝商品价格
2018/02/27 Python
Windows系统下PhantomJS的安装和基本用法
2018/10/21 Python
Python列表如何更新值
2020/05/27 Python
Django微信小程序后台开发教程的实现
2020/06/03 Python
详解HTML5 Canvas绘制时指定颜色与透明度的方法
2016/03/25 HTML / CSS
Html5 Geolocation获取地理位置信息实例
2016/12/09 HTML / CSS
HTML5中图片之间的缝隙完美解决方法
2017/07/07 HTML / CSS
"引用"与指针的区别是什么
2016/09/07 面试题
请解释virtual关键字的含义
2015/06/17 面试题
给面试官的感谢信
2014/02/01 职场文书
2014年资料员工作总结
2014/11/18 职场文书
房屋认购协议书
2015/01/29 职场文书
教导主任个人总结
2015/03/03 职场文书
自主招生自荐信怎么写
2015/03/24 职场文书
怎样写好工作计划
2019/04/10 职场文书
MYSQL 无法识别中文的永久解决方法
2021/06/03 MySQL