jQuery技术:将变量从jQuery传递给PHP

我创建了一个脚本来读取哈希值(www.website.com/#hash)并将哈希值传递给php。 alert(hash)弹出哈希值,但哈希值不会在post变量中回显。 知道为什么吗?

jQuery页面

  var hash = location.hash; $.post("community.php", { hash: hash }); alert(hash);  

Community.php页面

  

编辑 – 下面的$ _GET最初是$ _POST以上。

我有一个循环通过在函数中发布(发布ID)的foreach。 我需要将HASH传递给函数并将其与每次发布ID进行比较。 唯一的问题是,$ _GET [‘hash’]不会出现在函数内部。

 function something() { echo $_GET['hash']; } 

    $ .post是一个ajax事件。 您正在通过ajax发布数据,因此该页面不会转到communitypage.php。 对于你想要的行为你必须做普通的表格发布而不是ajax发布。 $ .post将使用此代码检索您在communitypage.php上回显的任何内容。

     //Note the 3rd argument is a callback. var hash = location.hash; $.post('communitypage.php',{hash:hash},function(data){ alert(data); }); 

    在该页面上处理哈希并在找到哈希值时发出警告。 你会在data找到回声

    您可以修改communitypage.php以返回html,如下所示

      0){ echo "Hash found :: " . $_POST["hash"]; }else echo "No hash found"; ?> 

    注意这将返回html,您可以根据需要修改响应以返回xml,json。

    有关详细信息,请参阅jQuery post()文档 。

    对于更新的问题

    它在外面工作,因为在函数内部调用ajax时调用它,因为函数没有被调用。 如果你想这样做(我不知道为什么),你可以这样做。

     function myfunction(){ //your code goes here } myfunction(); //call the function so that the code in the function is called upon 

    虽然这是一种矫枉过正,除非你想在同一个脚本中反复调用该函数。 如果它在没有function的情况下工作,你应该这样做。

    像这样使用ajax,以hashforms发送值

      function send_hash(hash) { $.ajax({ url : "community.php", type : "POST", cache : false, data : { hash : hash } }); } 

    现在你会得到的

      

      

    检查你的PHP响应:)

       

    要么

       

    在community.php中

      $res=isset($_REQUEST['val'])?$_REQUEST['val']:''; 

    希望它会给你一些解决方案。

    但是在post变量中没有回显哈希

    这是因为如果你想在页面加载时发送它,那么你必须在doc ready handler中使用它:

    需要了解更多jQuery教程分享将变量从jQuery传递给PHP,都可以关注jQuery技术分享栏目—计算机技术网(www.ctvol.com)!

      

      以上就是jQuery教程分享将变量从jQuery传递给PHP相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/jquerytutorial/982344.html

      (0)
      上一篇 2021年12月13日
      下一篇 2021年12月13日

      精彩推荐