假设我在php文件中有一个变量(index.php):
$PHP_variable = "string";
我想把它传递给我目前在php文件中读取的JS文件(functions.js)。这可能吗?
例如,我在我的php文件中有这个:
<input type="text" name="textfield" value="'.$PHP_variable.'" />
<input type="button" id="actionButton" />
在js文件中:
$('#actionButton').click(function(){
alert(THE_PHP_VARIABLE);
});
如何将$ PHP_variable传递给js文件?我不想直接在php脚本上使用js代码(我知道如何解决这个问题)。
答案 0 :(得分:0)
听起来你正在考虑使用PHP来生成Javascript,尽管它有点奇怪,但这是可能的。同样好奇的是你真的没有传递变量,你正在使用它来渲染相同值的javascript变量。
相反,我认为您真正想要做的是使用JS从HTML元素的value
属性中读取变量,因为您已经存储了变量&# 39;那里有价值。
这可以通过很多方式完成,但由于看起来你正在使用jQuery,它只是:
$('#actionButton').click(function(){
$value = $this.attr('value');
alert($value);
});
答案 1 :(得分:0)
你几乎就在那里 -
$('#actionButton').click(function(){
var THE_PHP_VARIABLE = $('input[name="textfield"]').val();
alert(THE_PHP_VARIABLE);
});
由于在页面加载时回显了值,因此可以通过在正确的元素上使用val()
来轻松获得该值。
如果要在加载页面时分配变量,也可以在PHP中执行此操作 -
<script type="text/javascript">
<?php
echo "var THE_PHP_VARIABLE = " . $PHP_variable .";";
?>
</script>
答案 2 :(得分:0)
感谢所有的答案,我选择使用带有id的隐藏输入字段和php变量作为此输入的值,然后在js文件中我只是从这个隐藏的输入中获取val() / p>
$input_val = $('#hiddenInputID').val();