这是工作,毕竟这是一个语法错误,但我想知道如何做到这一点,以便语法是正确的。语法错误输出php到javascript
以下代码是准备在Ajax调用中发送变量的脚本的一部分,因此根据范围将相应的变量传递给Ajax。
从javascript的角度来看,问题似乎是,只有每个范围的php变量被定义。
我会认为它不会试图解析如果条件不符合,但显然情况并非如此。 php变量$ scope始终被定义。
无论放火和Chrome开发者工具都扔了错误:
var scope_var = <br />
<b>Notice</b>: Undefined variable: brand in <b>/Applications/MAMP/htdocs/my_site/my_script.php</b> on line <b>1049</b><br />null;
感谢
var scope = <?php echo json_encode($scope) ;?>;
if (scope == 'all') {var scope_var = 'all';}
else if (scope == 'brands') {var scope_var = <?php echo json_encode($brand) ;?>;}
else if (scope == 'cities') {var scope_var = <?php echo json_encode($city) ;?>;}
else if (scope == 'models') {var scope_var = <?php echo json_encode($model) ;?>;}
else if (scope == 'prange') {var scope_var = <?php echo json_encode($used_prange_low) . '|' . json_encode($used_prange_high) ;?>;}
使用单引号var scope_var ='<?php echo json_encode($ brand);?>'; –
你确定$品牌是定义的吗?尝试在if语句之前打印它。 –