在PHP中返回javascript变量

时间:2014-02-18 21:26:41

标签: javascript php

我想知道是否有一种简单的方法可以从javascript函数中返回时差,然后在php中调用它。

我现在有这样的事情:

function getDiff() {
    $("#timeTo").on('keyup', function() {
        var timeTo = $("#timeTo").val();
        var timeFrom = $("#timeFrom").val();
        var diff = parseFloat(timeTo) - parseFloat(timeFrom);
    });

    return diff;    
}

然后我想在PHP中调用getDiff()来获取diff的值,我尝试了类似的东西,但它不起作用:

$timeDiff = getDiff();

3 个答案:

答案 0 :(得分:0)

您可以使用AJAX将diff发送给PHP。

https://api.jquery.com/jQuery.ajax/

function getDiff() {
    $("#timeTo").on('keyup', function() {
        var timeTo = $("#timeTo").val();
        var timeFrom = $("#timeFrom").val();
        var diff = parseFloat(timeTo) - parseFloat(timeFrom);
        $.ajax({
          type: "POST",
          url: "test.php",
          data: { difference: diff }
        })
    });
}

答案 1 :(得分:0)

Javascript仅在浏览器中执行。 PHP仅在服务器上执行。 您无法从PHP脚本中调用Javascript方法。 您最终可以使用AJAX请求或POST或GET请求发送该值。

答案 2 :(得分:0)

XHR:

var x=(window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject('Microsoft.XMLHTTP');
x.onreadystatechange=function(){if(x.readyState==4&&x.status==200){
  alert(x.responseText);
}}
x.open('GET','phpdiff.php?q='+diff,true);x.send();

phpdiff.php

echo$_GET['q'];
//calculate your diff