jquery .text()未确定的字符串文字

时间:2013-03-03 00:25:12

标签: jquery text add

我正在使用codeigniter和jquery,我试图从mysql中获取一些文本并将其插入<P>标记中。当我只说“hello world”时,该方法有效,但是当它抓取文本形式的SQL并插入它时,我得到一个未确定的字符串文字错误。这是我的代码:

$('#register').click(function(){
  <?
    $query = $this->db->get_where('eula', array('id'=>'1'));
    $result = $query->result();
    $eula = (string)$result[0]->eula;
    echo '$(\'#eulaText\').append(\''.$eula.'\'\);';
  ?>
    console.log("$string=".$string);
});

我在sql中有一个lorum ipsum字符串,我想插入页面。

我可以使用一些建议,我为草率的代码道歉。

1 个答案:

答案 0 :(得分:0)

我怀疑你有一个字符,它会在你返回的php变量中终止你的javascript字符串。你传递一个单引号的字符串(当页面加载并评估javascript时),如果该php变量(eula)包含单引号,它将终止传递给append()方法的字符串,从而导致“eula”的其余部分将被评估为JavaScript代码。

我已经按照我在此stackoverflow帖子中提供的示例解决了这个问题:

jQuery prepend php block of code

它可能不是最佳解决方案,但它确保传递给append()的javascript字符串文字不会包含任何可能终止它的非法字符。