这是什么Javascript语法错误

时间:2013-01-14 08:33:00

标签: javascript json wordpress

我有这个代码,它从PHP文件向JS发送一个变量。

<script type="text/javascript">
var pids = new Array(<?php echo implode(', ', $pids); ?>);
var permalink = "My name is <?php the_permalink(); ?>";
</script>  

由于我无法理解的原因,当拿走“我的名字是”时,这是一个语法错误。

<script type="text/javascript">
var pids = new Array(<?php echo implode(', ', $pids); ?>);
var permalink = "<?php the_permalink(); ?>";
</script>  

没有输出,脚本就会死掉。

 [Syntax Error]     

        = new Array(67, 68, 69, 70, 71,

第一个代码正在运行,现在已经自发停止,尽管没有任何变化。现在,都不起作用。

我发现问题是前面的代码: 当小于号符号更改为小于或等于时,会出现javascript语法错误。不知何故,这必须打破数组或内爆函数

 $pids = array();
  $i=0;

  $result = count($wpdb->last_result);
  while($i < $result) {    

     $pids[] = $wpdb->last_result[$i]->pid;
     $i++;
  }
?>

<script type="text/javascript">
var pids = new Array(<?php echo implode(', ', $pids); ?>);
var permalink = "My name is <?php the_permalink(); ?>";
</script>  

3 个答案:

答案 0 :(得分:0)

试一试:

var permalink = "My name is '<?php the_permalink(); ?>'";

答案 1 :(得分:0)

你可能在其中一个php输出函数中有'或',试图逃避它们。 如果你的一个pid是错误的类型并且内爆未能完成,也可能发生这种情况。

答案 2 :(得分:0)

试试这个:

var permalink = "My name is " + <?php the_permalink(); ?>;