我逃避字符串时出错

时间:2013-07-03 10:45:09

标签: php javascript jquery

我正在尝试在我的面板中的PHP代码中编写一个字符串。 这是下面给出的

<?php
$str.="$('#layerList ul').prepend('<li data-refInd=\''+arr_ind+'\'><img src=\''tmp_card_imgs/\'+temp".$k.".name+'\' width='20px' /> Layer '+temp".$k.".zindex+':Image <span class=\'del_layer\' style=\'cursor:pointer;float:right;display:block;\'>X</span></li>');";
?>

但是控制台中显示的错误如下所示

SyntaxError: missing ) after argument list
[Break On This Error]   

...data-refInd=\''+arr_ind+'\'><img src=\''tmp_card_imgs/\'+temp0.name+'\' width='2...
-----------------------------------------|
editor.php?id=129 (line 837, col 60)

我的字符串转义有什么问题?

2 个答案:

答案 0 :(得分:1)

这里出了点问题:

<img src=\''tmp_card_imgs/\'+temp0.name+'\' 
//        ^               ^

应该是

<img src=\'tmp_card_imgs/'+temp0.name+'\' 

你没有逃脱

width='20px'

应该是

width=\'20px\'

<强> Endresult:

<?php
    $str.="$('#layerList ul').prepend('<li data-refInd=\''+arr_ind+'\'><img src=\'tmp_card_imgs/'+temp".$k.".name+'\' width=\'20px\' /> Layer '+temp".$k.".zindex+':Image <span class=\'del_layer\' style=\'cursor:pointer;float:right;display:block;\'>X</span></li>');";
?>

答案 1 :(得分:0)

$str .= "$('#layerList ul').prepend('<li data-refInd=\"'+arr_ind+'\"><img src=\"tmp_card_imgs/'+temp".$k.".name+'\" width='20px' /> Layer '+temp".$k.".zindex+':Image <span class=\"del_layer\" style=\"cursor:pointer;float:right;display:block;\">X</span></li>');";