【发布时间】:2016-01-14 12:10:27
【问题描述】:
我有一个页面,当页面加载时,textarea 会填充数据库中的值。我想看看值是否被修改。 我使用 jquery 从 textarea 获取值:
fields.care_advice_message = $('#care_advice_message').val();
并通过ajax发送:
$.ajax({
type: "POST",
url: "page.php",
data: fields
}).done(function(data){ ..}
在 page.php 上,我将通过 ajax 收到的字符串与来自数据库的字符串进行比较,每次收到的字符串都不同。
if(trim($_POST['care_advice_message']) !== trim($organization_data['care_advice_message']))
{
echo " different " . strlen($_POST['care_advice_message']) . " " . strlen($organization_data['care_advice_message']);
}
else {
echo " same ";
}
我使用 var_dump 查看 page.php 上的字符串
var_dump($_POST['care_advice_message']);
var_dump($organization_data['care_advice_message']);
我收到了这个:
<pre class='xdebug-var-dump' dir='ltr'><small>string</small> <font color='#cc0000'>'text line new text line another line'</font> <i>(length=36)</i>
</pre><pre class='xdebug-var-dump' dir='ltr'><small>string</small> <font color='#cc0000'>'text line new text line another line'</font> <i>(length=38)</i>
为什么来自 ajax 帖子的字符串只有“& #10;” unicode 但从数据库中我有“ ”也是?
如果我提交表单,那么字符串是相同的。
【问题讨论】:
-
这不是一个确定的解决方案,所以请评论:尝试将您的响应包装在 JSON 中。
-
我在 json 中发送我的字符串消息,如果这就是你的意思。 “字段”变量是一个 json
-
我在谈论响应(php),除此之外:据我所知,字段不是 json。致电
.serializeObject() -
如果你想将它作为 JSON 返回,你是否使用了正确的响应头?
-
我不想以 JSON 格式返回它,我只想检查 textarea 中的文本是否被修改。我使用 var_dump 只是为了查看字符串有何不同。
标签: javascript php jquery ajax