显示输入值

时间:2019-09-18 00:50:46

标签: javascript php

我的问题:

<div id=mahashh></div>
<script> 
    var $mahash = window.location.hash.replace('#', '');
    document.getElementById("mahashh").innerHTML =  "Your ID " + $mahash; 
</script> 
<input type="text" id="mahashh" name="mahashh" value ="<?php echo $mahash ?>" >

值您的ID正确显示,但未显示输入值。 有人帮助我在“输入值”中显示它。非常感谢!

我是新手,不是亲^^!

2 个答案:

答案 0 :(得分:0)

几件事:

  1. PHP是服务器端语言。 Javascript(不是Java)是一种客户端语言。您正在尝试将Javascript变量输出到PHP中,但这是不可能的(至少不是以您尝试的方式)
  2. 服务器未处理来自URL的哈希值,因此默认情况下在PHP中不可用。尝试从Javascript向服务器发送哈希片段会涉及到AJAX之类的东西,这不太可能是您想要的。

在这里不完全了解您的确切用例的情况下,最好使用Query Parameters将简单信息传递给服务器。

例如:

// http://yourlocalsite.com?id=yourId
<div id="mahashh"><?php echo 'Your ID ' . $_GET['id'] ?></div>
<input type="text" id="mahashh" name="mahashh" value ="<?php echo $_GET['id'] ?>" >

这是一个非常简单(且不安全)的示例,但应该为您尝试完成的工作提供一个更好的起点。

答案 1 :(得分:0)

<?php echo $mahash ?> 

您正在尝试显示先前在

中设置的值
var $mahash = window.location.hash.replace('#', '');

之所以不能正常工作,是因为:php是一种服务器端语言,而javascript是一种客户端语言。这意味着php代码是在其他计算机(想象是aws服务器)上执行的,而javascript代码是在您的浏览器(您的pc而不是aws服务器)上执行的。因此,php和js不能直接相互通信。