我正在尝试将 JS 变量传递给 php echo 语句。
这是我的代码
<?php print '<a href="thisTest.html?id=my_JS_value">test</a>'; ?>
我怎样才能做到这一点
我只是对此进行了测试,它可以工作,但是如何在 href 中写入值
警报(我的价值);";
我正在尝试将 JS 变量传递给 php echo 语句。
这是我的代码
<?php print '<a href="thisTest.html?id=my_JS_value">test</a>'; ?>
我怎样才能做到这一点
我只是对此进行了测试,它可以工作,但是如何在 href 中写入值
警报(我的价值);";
从时间的角度来看,这是不可能的。
当 PHP 代码运行时,没有 JavaScript。该页面尚未加载到浏览器中。没有运行 JavaScript 引擎。没有 JavaScript 变量。当浏览器呈现页面时,服务器代码已经完成了它的工作。
话虽如此,您可以呈现引用 JavaScript 函数的 HTML。例如:
<?php print '<a href="javascript:DoNav(\'thisTest.html\');">test</a>'; ?>
然后,DoNav
相应地实施:
function DoNav(url)
{
location.href = url + '?id=' + my_JS_value; // Navigate to the new URL with the JavaScript variable
}
JavaScript 和 PHP 不能直接通信,因为 JavaScript 是客户端,而 PHP 是服务器端,即在 JavaScript 发送到浏览器之前执行 PHP。
实现您想要的唯一方法是从 JavaScript 发送一个请求,该请求调用 PHP 脚本(例如 AJAX)并通过 GET(如您的示例)或 POST 传递变量。
Javascript 代码在客户端执行,因此您无权访问它。您可以使用 Javascript 创建链接,如下所示:
var my_JS_value = 0;
document.write('<a href="thisTest.html?id=' + my_JS_value+ '\">test</a>');
您可以使用 php 插入元素,稍后使用 JS 设置 href 属性。无论如何,还有很多其他方法可以实现相同的目标。
<?php
print '<a id="mylinkelement" >test</a>
<script>
var mylinkelement=getElementById("mylinkelement");
mylinkelement.href="thisTest.html?id="+my_JS_value;
</script>';
?>
你甚至不需要 php :D