本文详解PHP如何将变量值传递给JavaScript。重点分析字符串赋值时单双引号的嵌套规则,指出若PHP输出字符串未正确包裹引号,JS会将内容误判为未定义变量从而报错。通过代码示例演示正确的赋值语法,确保前后端数据交互无误。
PHP变量传递给JavaScript的引号处理
代码如下:
$(document).ready(function(){
<?php $f="'name'"?>
var t=<?php echo $f?>;
alert(t)
})
或
代码如下:
$(document).ready(function(){
<?php $f="name"?>
var t="<?php echo $f?>";
alert(t)
})或
代码如下:
<script language="javascript" >
var t=<?php echo '"sd"'?>;
alert(t)
</script>
关键在于字符串值两侧必须同时包含单引号和双引号,否则浏览器会报错显示“sd is not defined [在此错误处中断] var t=sd;”。这是因为若不加引号,JavaScript会将该字符串视为一个变量名,而该变量此前并未定义,因此赋值操作会失败并抛出错误。