如何在PHP中使用JS变量?
<script>
x = document.getElementById(1).value;
var listOf = <?php echo $listOf[x]; ?>;
</script>
这不起作用:(
答案 0 :(得分:1)
理所当然。 PHP在服务器上执行,而JavaScript则在客户端的浏览器中执行。这是两个不同的上下文,一个变量在第二个中不可见。
您需要让PHP脚本输出数组的JavaScript版本,然后在脚本中使用此脚本。像这样:
<?php
echo "listArray = new Array();\n";
foreach ($listArray as $key => $value) {
echo 'listArray[', $key, '] = ', $value, ";\n";
}
答案 1 :(得分:1)
这是不可能的,因为两者都是不同的语言,所以你不能使用javascript变量 在php里面的javascript
答案 2 :(得分:0)
你不能像这样直接使用它。
您必须使用AJAX将值从客户端发送到服务器端,然后才能看到它。
使用jQuery它可以变得非常简单:
x = document.getElementById(1).value;
$.get("mypage.php?x=" + x, function(result) {
alert("response from PHP: " + result);
});
在PHP中,从查询字符串中读取x
并发送正确的输出。
答案 3 :(得分:0)
这是不可能的。 PHP在服务器端执行,甚至在其输出到达浏览器之前。 JS在浏览器中执行客户端。除非使用此变量x
调用其他PHP脚本,否则不能这样做。
答案 4 :(得分:0)
你做不到。当PHP在服务器上运行时,JavaScript在您的浏览器中运行。 JavaScript与PHP通信的唯一方法是使用AJAX(XMLHttpRequest),将JavaScript与PHP分开。
答案 5 :(得分:0)
<script type='text/javascript'>
x = document.getElementById(1).value;
var listOf = "<?php echo $listOf[x]; ?>";
</script>
答案 6 :(得分:0)
这会将javascript变量转换为php变量。
<script>
function sud(){
javavar=document.getElementById("text").value;
document.getElementById("rslt").innerHTML="<?php
$phpvar='"+javavar+"';
echo $phpvar.$phpvar;?>";
}
function sud2(){
document.getElementById("rslt2").innerHTML="<?php
echo $phpvar;?>";
}
</script>
<body>
<div id="rslt">
</div>
<div id="rslt2">
</div>
<input type="text" id="text" />
<button onClick="sud()" >Convert</button>
<button onClick="sud2()">Once Again</button>
</body>