【问题标题】:Converting a PHP variable to a JavaScript variable将 PHP 变量转换为 JavaScript 变量
【发布时间】:2013-10-21 14:43:02
【问题描述】:
我正在使用 window.open() 使用 JavaScript 制作一个弹出窗口。要打开的页面应该存储在一个变量中。
该变量的名称是使用 PHP <form> 确定的。当用户点击“确认”时,它会将他们带到play.php?name=userinput,当window.open函数执行时,它当前打开txtone.php。但我希望它打开txtone.php?name=userinput,包括那个论点。
我可以使用 PHP 变量从父窗口 (name=userinput) 检索值,但我需要将其转换为 JavaScript 变量,然后使用 window.open(name);(变量名称为 name)。
所以我基本上是在问如何将 PHP 变量转换为 JavaScript 变量。
【问题讨论】:
标签:
javascript
php
forms
window.open
【解决方案1】:
在生成页面时会在 JavaScript 中使用 PHP 变量。例如,假设您有一个名为 $name 的 php 变量,并且您想要一个名为 name 的 JavaScript 变量。您通常将 JavaScript 变量定义为:
var name='some value';
相反,您将插入 PHP:
var name='<?php echo $name; ?>';
现在,您 PHP 中 $name 的值也是动态创建页面时 JavaScript 中 name 的值。
更新:当我回答这个问题时,我应该进一步解释......
虽然 JavaScript 和 PHP 变量具有相同的值,但它们不是同一个变量。如果在将值打印到 JavaScript 源代码后更新 PHP 中的 $name,它不会改变 JavaScript 值。同样,如果您更改 JavaScript 变量的值,它不会更改 PHP 变量的值。换句话说,它们是两个完全独立且不相关的变量。上面的代码只是将值从 PHP 复制到 JavaScript。
【解决方案2】:
试试这个:
其中spge 是js 中的变量
var spge = '<?php echo $status ;?>';
【解决方案3】:
//假设
<?php $tochange="from php to js" ?>
某处
//Head
<script>
function change(){
var temp = document.getElementById("change").innerHTML;
alert ("temp");
}
</script>
//body
<body onload="change()" >
//create a invisible tag in body php document
<span id="change"><?php echo $tochange ?></span>
.....