Javascript 如何在php中操作从js函数获取的值

Javascript 如何在php中操作从js函数获取的值,javascript,php,Javascript,Php,我从php代码中调用了一个js函数,并从js函数中调用了它的返回值,但问题是在得到值之后,如果我用该值添加一些数字,它不会显示预期的结果。代码如下:- <!DOCTYPE html> <html> <head> <script> function returnValue(){ document.getElementById("getVal").innerText=parseInt(5); } </scri

我从php代码中调用了一个js函数,并从js函数中调用了它的返回值,但问题是在得到值之后,如果我用该值添加一些数字,它不会显示预期的结果。代码如下:-

 <!DOCTYPE html>
 <html>
 <head>
<script>
    function returnValue(){
        document.getElementById("getVal").innerText=parseInt(5);
    }
</script>
</head>
<body onload="returnValue()">
<?php 
    $val="<span id='getVal'><script>returnVal()</script></span>";
    echo $val+2; //return 2 not 7;
?>
</body>
</html>

请提供帮助。

您不能以这种方式混合使用php和js,因为php必须在发送html之前执行,javascript在用户收到html后执行


我建议您使用ajax。通过这种方式,您可以将returnValue值发送到php脚本,在那里您可以处理它,甚至可以将其输出发送回javascript。

您需要的是一个AJAX调用。我用jQuery来做,但是你也可以用普通的java脚本来做,只需谷歌一下语法

您面临的问题是JavaScript和PHP在不同的位置上运行

PHP在服务器上运行,JavaScript在客户端上运行,因此PHP将在客户端到达html文件之前完成。客户不了解PHP

JavaScript和PHP之间的通信由AJAX调用处理。如果你需要进一步解释,就查一下

在Ajax代码的JavaScript代码下面:

var data = returnValue();

$.ajax({
            type: "POST",
            dataType: 'json',
            url: yourfile.php,
            data: {data : data}
        })
        .done(function(response){
            //do something with your code like document.wirte(response)
        })
        .fail(function(jqXHR, textStatus, errorThrown){
            alert('Error : ' + errorThrown); //Error handling
        });
以下是一些PHP:

$value = $_POST['data'];
$value = $value +2;
echo $value;

PHP在服务器上执行,而javascript在客户机上运行。这不是两者可以一起使用的方式。另外,您正在包含一个字符串和一个数字。@因此,我不能对其执行一些计算。换句话说,您的php在您的浏览器甚至不知道有数据出现之前就已经完成了javascript@delueg如果你只是停留在如何将值从javascript传递到php并返回的问题上。。。我建议你看看这里。。。。我还写了一个小hleper模块化和简易化它伟大!如果你被卡住了,请告诉我们!