2014-01-15 23 views
0

我想通过按钮onclick将PHP变量$e置于HTML文本框id="textid"中。我已经玩过各种语法,但我似乎无法让它工作。我究竟做错了什么?使用Javascript的PHP变量到HTML文本框

<script type="text/javascript"> 
function ElementContent(id,content) 
{ 
    document.getElementById(id).value = content; 
} 
</script> 

<input type="text" name="" value ="" id="textid" ;"/> 

<?php 
$e = "test"; 
echo '<button value="" class="button" onclick="ElementContent(\'textid\',\'$e\')" />'; 
?> 
+1

按钮不是自闭的。它应该是''。 – putvande

+0

不完全正确,每个标签都可以在XHTML中自行关闭 –

回答

4
echo '<button value="" class="button" onclick="ElementContent(\'textid\',\''.$e.'\')" />Button Name</button>'; 

你必须Concat的字符串,如PHP不会自动识别美元+一些名字作为单引号字符串变量。

+1

修复此部分'$ e \。''' – jcho360

+1

'

+0

实际上这里并不重要,但是谢谢 –

3

PHP变量只能在用双引号构造的字符串中解释(")。更新你的代码如下:

<button value="" class="button" onclick="ElementContent('textid', '<?php echo $e ?>')" /> 

正如你所看到的,没有必要在PHP中输出整个按钮标记。因此,您的最终代码应该是:

<script type="text/javascript"> 
function ElementContent(id,content) { document.getElementById(id).value = content; } 
</script> 

<input type="text" name="" value ="" id="textid" /> 

<?php $e = "test"; ?> 
<button value="" class="button" onclick="ElementContent('textid', '<?php echo $e ?>')">Button</button> 

我也参加了修复与您的标记的几个问题的时候了。