【问题标题】:Locally storing a javascript variable which is incremented by .php script本地存储由 .php 脚本递增的 javascript 变量
【发布时间】:2015-06-04 23:51:28
【问题描述】:

我有一个在 .php 脚本中递增的 javascript 变量,除了 .php 脚本使页面重新加载然后重置变量之外没有问题,我的问题是,是否可以在本地存储一个javascript 变量即使整个增量发生在 .php 脚本中,并且变量和本地存储在带有变量和函数的 html 脚本中,但 html/javascript 文件和 .php 文件是分开的,这是困难的部分。

html/javascript:

<div class="bidVar">
  current amount: $<span id="bidVar"></span>
</div>

<script type="text/javascript"> 
  var bidVar= 1;
  document.getElementById("bidVar").innerHTML = bidVar;
  document.getElementByID("bidVar").value = bidVar;

  function addToCurrent() {
    bidVar= bidVar+ 1 ;
    document.getElementById("bidVar").innerHTML = bidVar;
  }
</script>

.php:

<?php 
    echo '<script type="text/javascript"> addToCurrent(); </script>';
?>

【问题讨论】:

    标签: javascript php html save local-storage


    【解决方案1】:

    本地存储中的变量由 PHP 递增:您的 PHP 脚本会输出一些执行此操作的 Javascript 代码。 您要么不必直接在 PHP 脚本中重定向,要么用指示下一页应该增加变量的内容进行重定向。

    例子:

    script.php

    // ...
    header('Location: mypage.php?increment=true');
    exit();
    

    mypage.php

    // ...
    if (isset($_GET['increment']) && $_GET['increment'] == true) {
        echo '<script type="text/javascript"> addToCurrent(); </script>';
    }
    // ...
    

    【讨论】:

    • 是否可以让变量仍然在同一个脚本中,然后在 .php 脚本中有一个函数,该函数重定向到另一个页面,然后增加变量,然后重定向到第一页其中的实际变量?
    【解决方案2】:

    为了避免刷新页面并因此重新加载 JavaScript,您可能需要查看 AJAX 样式的页面。这样可以重新加载或操作页面的特定部分,可以调整 JavaScript 变量,但不会重新加载整个页面。

    如果这不可能,您必须让您的 JavaScript 在单击链接或提交表单时发送其当前计数,让您的 PHP 捕获该数字,然后您的 PHP 将当前计数发送到您的 JavaScript,当页面重新加载。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-24
      • 2017-01-18
      • 1970-01-01
      • 2014-02-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多