2015-09-13 38 views
1

为什么当我从MySQL打印带有换行符数据jQuery的被禁用?这里 的问题是,在JavaScript中所有的功能和js被禁用,没能做好自己的任务为什么jQuery的被禁用

例如从MySQL我有这样的数据:

You 
are 
good 
in 
english 

,然后我印像这样的:

<p id = "messagebody" style ="white-space:pre"> <?php echo htmlspecialchars($row['d_body']);?></p> 

但是,当我有这样一个数据:

You are good in english 

jquery的作品!怎么来的?

任何想法?

UPDATE

我这里有此示例代码:

$mybody = "Hello 
      User"; 

也是这一个:

$mybody = "Hello \n User"; 

但两者不工作!

但如果它是:

$mybody = "Hello User"; 

它的工作!

两者都使用此;

<p id = "messagebody" style ="white-space:pre"> <?php echo $mybody;?></p> 

也有这个按钮:

<button id = "<?php echo $rowcomment['comment_id']; ?>" class = "editcom"> Edit</button > 

JQUERY

$(document).on("click",".editcom",function(event){ 
     var thisid = event.currentTarget.id; 
     alert(thisid); 
    }); 
+0

字符串vs表达式。 –

+0

对不起,我不明白吗?你能解释一下吗? – Makudex

+0

你的jQuery语法在哪里? – Rayon

回答

1

终于来了!这个问题已经解决了,花了差不多6个小时的时间考虑可能是什么解决方案。

只是做了我的代码是这样的:

$mybody = htmlspecialchars("Hello 
       WOrld"); 
$mybody = preg_replace("#\r|\n#", "<br>", $mybody); 

刚刚更换了\r\n<br>和它的所有设置!

谢谢你们,我可以找出这些\r\n

+0

我为你骄傲; –

+0

谢谢你@sᴜʀᴇsʜᴀᴛᴛᴀ – Makudex

+0

Upvote and Mark the correct answer :) –

1

我面对这个问题早就回了:)

当你写

var response = "You 
are     // ?? 
good 
in 
english 

看代码是如何破的?后面的4行被认为是脚本和脚本引擎,试图评估它们,因此破坏了它们。

凡作为

var response = "You are good in english" 

是甜的脚本引擎。这是一个包含甜蜜数据的字符串变量。你可以看到它为什么会坏掉。

你可以做的是分配给任何脚本变量之前顶替那些字之间的所有魔法符号。

解决方案我有时间来删除单词之间的所有魔法盒是

https://stackoverflow.com/a/25681807/1927832

+0

我没有把它分配给脚本。我刚刚显示它,然后按钮将无法工作 – Makudex

+0

@Makudex我的意思是将该字符串放在DOM :)天气脚本或按钮上的文本。 –

+0

正如你所看到的,每个单词都有换行符的数据来自数据库,所以我不知道该怎么办 – Makudex

相关问题