我使用jQuery ajax方法从数据库中获取数据并通过json对象返回数据。但是,此json对象中的一个值是HTML字符串。我基本上正在做的事情here,除了我需要知道如何删除jQuery添加到HTML字符串的斜杠。有什么想法吗?
示例
json.HTML = Click <a href=\"http://example.com/example.php\">here</a>;
//Needs to be
json.HTML = Click <a href="http://example.com/example.php">here</a>;
如果可能的话,我希望在没有代码的情况下这样做。
更新
好的,我发现如果我在返回之前做了htmlentites,那么当值进入时,斜杠就不存在了。现在,我将使用哪个jquery函数将此字符串插入到td元素中而不添加斜杠。 html或.text函数。
以下是直接来自json.HTML值的内容,
Click <a href=\"http://example.com\">here</a>
这是在使用.html
显示之后Click <a href=\"http://example.com\">here</a>
以下是使用.text
显示的内容Click <a href=\"http://example.com\">here</a>
我想知道我是否需要使用.val?哦,还有一件事,我希望这个HTML能够按字面显示,而不是要插入到代码中的实际HTML。
答案 0 :(得分:2)
可能就像这样简单:
stringvar.replace('\\','');
答案 1 :(得分:2)
我不认为你的问题是jquery添加斜杠。我不认为你正确地从你的PHP返回json你是使用json_encode并给json标头?如果将json结果保存为文本文件,它会是什么样的?
如果你无法正常下来,你可以使用
将这个作为你的json
$foo = 'Click <a href="http://example.com">here</a>';
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
header("Last-Modified: " . gmdate( "D, d M Y H:i:s" ) . "GMT" );
header("Cache-Control: no-cache, must-revalidate" );
header("Pragma: no-cache" );
header("Content-type: text/x-json");
echo json_encode($foo);
并查看是否有同样的事情
修改强> 不要使用你想要的文字
$('#table_id td').html(json_response);
这是伪代码
答案 2 :(得分:2)
玩了很长时间之后。我发现我正在从post数据中删除斜杠并将该值存储在一个正确的数组中,但后来我再次使用post值raw,这是斜杠的来源。我需要做的就是使用我已经删除了斜杠的值。