这个问题在网页开发时经常遇到,其实解决办法非常简单,就是几行代码的事,不过各种js、php书上都没有,百度下来也乱七八糟的,有的能用,有的不能用。小编遇到这问题时认认真真研究了一上午,研究出一点心得,希望可以帮到你

方法/步骤

  1. 第一种情况:

    两个不在同一页面(js一个页面,php在另一个页面)

    第一种方法:

    通过url传参。js传过去,php接收,或者php传过去,js接收。

    这里展示一下js传过去,php接收的情况。

    我用的jquery,写的方便。js的DOM操作麻烦。

  2. js通过url传过去,最重要的是更改url

    代码:$(form的id).attr("action",新的url地址);

    这个是更改form的action的url来达到传参的目的。

    当然表格完成之后一般都会跳转,将数据传到跳转后的回执页面,在那里进行数据库操作。

    贴一下我的代码,以这个为样例来详细介绍。如图

  3. 再说一下php接收过程,这个很简单的。用到的命令是:

    $ss=$_POST["url中的参数名"];

    非常简单,php会自动识别url并分析出参数值。但需要注意的是:form表格的method属性要是post,否则php就不能用POST方法接收。

    url传参,参数格式要写对,图有样例。

    发张接收图。

     
  4. 在这里详细说明一下php的POST[ ] 方法的用法及原理。

    POST[" "] <----------- 括号中的值是你method方法为post的表单的各项元素的name。

    例如

    <form method='post'>

    <input name='123' />

    </form>

    那么你的php接收时就要这样写:

    $ss=$_POST["123"];

    名字一定要对上,否则post方法不管用。

  5. 第二种方法:

    php向js传递参数。

    这个其实和上面的一样,只是变成了php更改url,js接收参数

    多用在查询数据时。只是有一点非常坑,那就是js接收参数好像需要自己字符串加工,我还没有找到好办法。发一下我写的接收两个参数的js函数。

    代码如下:

  6. 代码:

    function Ana()    //(函数名:分析的英文缩写)

    {

        var url = $(window.parent.document).find("#rl").attr("src"); 

    var pq=typeof(url);

    if ( pq == "undefined" ) {

    var c=date();

    return c; }

    else

    {

    var p=url.indexOf("?");

    if (p!=-1)

    var i=url.indexOf("=");

    i=i+1;

    var j=url.indexOf("&");

    var c1,c2;

    c1="";

    c2="";

    for (var k=i;k<j;k++)

    {c1 +=url[k];}

    var s=url;

    url="";

    for (k=j;k<s.length;k++)

    {url +=s[k];}

    i=url.indexOf("=");

    i=i+1;

    j=url.length;

    for (var k=i;k<j;k++)

    {c2 +=url[k];}

    var c=new Array(c1,c2);

    return c;

    }

    else 

    {

    var c=date();

    return c;   //返回数组。

    }

  7. 第二种情况:

    php与js在同一页面,php要传递给js变量。

    简介中说了,这东西很简单,就是几行代码的事,就是不好找。

    所以废话不多说,贴代码:

    代码都能看清,就一行,就不写了,写了也没用,改个变量名的时间就够你写出来这行代码了。

  8. 看一下代码效果!证明我这方法有效,没骗你。

     

最新文章

  1. java线程学习
  2. webform 中使用ajax
  3. 【转载】解决方案:Resharper对系统关键字提示‘can not resolve symbol XXX’,并且显示红色,但是编译没有问题
  4. [poj2785]4 Values whose Sum is 0(hash或二分)
  5. heaters
  6. 团队项目——二手书店(NABC分析)
  7. Java并发包中常用类小结(一)
  8. 八、jdk工具之JvisualVM、JvisualVM之一--(visualVM介绍及性能分析示例)
  9. openssl 加密
  10. hdu4064 三进制状态压缩 好题!
  11. [Python设计模式] 第10章 怎么出试卷?——模版方法模式
  12. M1 卡技术规范
  13. SpringBoot-YML的用法
  14. mysql show profiles 使用分析sql 性能
  15. mysql性能优化(二)
  16. 四、redis系列之主从复制与哨兵机制
  17. C语言编程基础学习字符型数据的ASCII码值为何是负数?
  18. Day20 javaWeb监听器和国际化
  19. TextView上下滑动
  20. hive在客户机启动时出现的问题

热门文章

  1. Lorenzo Von Matterhorn
  2. NSTimer相关方法
  3. 15个最佳jQuery的翻页书效果的例子
  4. 黑科技--位集--bitset
  5. ubuntu下mysql 开启远程连接
  6. css控制div显示/隐藏方法及2种方法比较原码 - czf164的专栏 - 博客频道 - CSDN.NET
  7. 路过Haxe
  8. 配置 Gitblit 进行 Git 代码管理
  9. (中等) POJ 3280 Cheapest Palindrome,DP。
  10. mustache.js基本使用(一)