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 相关文章推荐
textarea中的手动换行处理的jquery代码
Feb 26 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
Sep 29 Javascript
鼠标放在图片上显示大图的JS代码
Mar 26 Javascript
jquery foreach使用示例
Sep 12 Javascript
浅谈类似于(function(){}).call()的js语句
Mar 30 Javascript
JS实现弹性漂浮效果的广告代码
Sep 02 Javascript
JavaScript的Vue.js库入门学习教程
May 23 Javascript
详解Bootstrap的iCheck插件checkbox和radio
Aug 24 Javascript
详解Vue 普通对象数据更新与 file 对象数据更新
Apr 26 Javascript
详解如何使用vue-cli脚手架搭建Vue.js项目
May 19 Javascript
Vue组件开发技巧总结
Mar 04 Javascript
js中如何完美的解析数据
Mar 18 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 5.3新特性命名空间规则解析及高级功能
2010/03/11 PHP
PHP中数组定义的几种方法
2013/09/01 PHP
php实现简易聊天室应用代码
2015/09/23 PHP
php array_slice 取出数组中的一段序列实例
2016/11/04 PHP
Javascript模块化编程(一)模块的写法最佳实践
2013/01/17 Javascript
JQuery动画和停止动画实例代码
2013/03/01 Javascript
jquery设置按钮停顿3秒不可用
2014/03/07 Javascript
JS回调函数的应用简单实例
2014/09/17 Javascript
jQuery常用数据处理方法小结
2015/02/20 Javascript
nodejs中实现阻塞实例
2015/03/24 NodeJs
jQuery中inArray方法注意事项分析
2016/01/25 Javascript
ZeroClipboard.js使用一个flash复制多个文本框
2017/06/19 Javascript
webpack下实现动态引入文件方法
2018/02/22 Javascript
vue实现的树形结构加多选框示例
2019/02/02 Javascript
layui禁用侧边导航栏点击事件的解决方法
2019/09/25 Javascript
使用Typescript和ES模块发布Node模块的方法
2020/05/25 Javascript
简单了解Vue computed属性及watch区别
2020/07/10 Javascript
详解vue中v-model和v-bind绑定数据的异同
2020/08/10 Javascript
微信小程序实现多行文字滚动
2020/11/18 Javascript
javascript实现简单留言板案例
2021/02/09 Javascript
Python新手们容易犯的几个错误总结
2017/04/01 Python
Python 实现随机数详解及实例代码
2017/04/15 Python
Python面向对象之静态属性、类方法与静态方法分析
2018/08/24 Python
详解Python 正则表达式模块
2018/11/05 Python
python获取交互式ssh shell的方法
2019/02/14 Python
python实战串口助手_解决8串口多个发送的问题
2019/06/12 Python
树莓派动作捕捉抓拍存储图像脚本
2019/06/22 Python
在jupyter notebook 添加 conda 环境的操作详解
2020/04/10 Python
HTML5梦幻之旅——炫丽的流星雨效果实现过程
2013/08/06 HTML / CSS
市场营销方案范文
2014/03/11 职场文书
吨的认识教学反思
2014/04/27 职场文书
个人工作主要事迹
2014/05/08 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
虎兄虎弟观后感
2015/06/12 职场文书
廉洁自律证明
2015/06/24 职场文书
django中websocket的具体使用
2022/01/22 Python