当我使用php if-语句时,我想将$_POST['foo']
变量传递给JavaScript变量。但它不起作用。关于如何运行它,有什么建议吗?
<?php
if(isset($_POST['foo']))
{
?>
<script>
var jFoo= <?php echo json_encode($_POST['foo']); ?>;
</script>
<?
}
else {
...
}
?>
编辑:
这很奇怪:实际上,我正试图让代码像这样运行(这不起作用):
if(isset($_POST['foo']))
{
?>
<script>
var jFoo= <?php echo json_encode($foo); ?>;
</script>
<?
}
else {
...
}
然而,当我刚刚这样做的时候,它起了作用:
<?php
if(isset($_POST['foo']))
{
?>
<script>
var jFoo= <?php echo json_encode($_POST['foo']); ?>;
</script>
<?
}
else {
...
}
有什么想法吗?
我对您的脚本做了一个简单的更改,它对我很有效
<?php
if(isset($_POST['foo']))
{
?>
<script>
var jFoo= <?php echo json_encode($_POST['foo']); ?>;
alert(jFoo);
</script>
<?php
}
else {
}
?>
<form action="" method="post">
<input type="text" name='foo' />
<button type="submit">Submit</button>
</form>
此代码正常工作:
<form method="post" action="">
<input type="text" name="foo"></input>
<input type="submit" name="submit" value="submit">
</form>
<script type="text/javascript">
<?php
if(isset($_POST['foo'])) {
?>
var jFoo = <?php echo json_encode($_POST['foo']); ?>;
alert(jFoo); // test
<?php } ?>
</script>