使用$('myDiv').load('mytxtFile.txt')
时如何解码.txt文件的html内容?
我知道:$('<div/>').html(value).text();
换句话说,我如何将这两者结合起来?
重要提示:mytextFile.txt是一些与ckeditor合作的代码的容器,我想以html格式在html表单中显示这个txt文件的内容。
我的txt文件中的代码是:
<p>hellohome</p>
我希望将其显示为:sss hello home sss 在我的HTML页面
坦克你的陪伴
答案 0 :(得分:1)
如果我正确理解了这个问题,你可以这样做:
$('myDiv').load('mytxtFile.txt', function(text) {
$(this).text(text);
});
答案 1 :(得分:0)
你做不到。 load()
旨在将HTML片段直接拖入文档中。如果您想预处理数据,请使用$.ajax
加载数据,然后使用success
编写自己的逻辑来更新元素内容。
success: function (data) {
$('myDiv').text(data); // Note: Your selector but not one that is valid for an HTML document
}
答案 2 :(得分:0)
您可以使用$.ajax
加载文本文件,然后使用“$('#YOURDIV').text(data)
”
实施例: 提琴手:http://jsfiddle.net/ZXMha/
HTML:
JavaScript的:
$.ajax({
url: '/echo/html/',
type: "POST",
data: {
html: "<p>Text echoed back to request</p>" + "<script type='text/javascript'>$('target').highlight();<\/script>",
delay: 0
},
success: function(data){
$('#text').text(data);
}
})
输出:
<p>Text echoed back to request</p><script type='text/javascript'>$('target').highlight();</script>
注意:在此示例中使用Post来模拟返回html的ajax调用。有关Fiddler echo HTML Options,请参阅http://doc.jsfiddle.net/use/echo.html。
关于第二个问题:您只需将带有.html(数据)的文本发布到div中即可。
代码:
$.ajax({
url: '/echo/html/',
type: "POST",
data: {
html: "<p>hellohome</p>",
delay: 0
},
success: function(data){
$('#text').html(data);
}
})
Fiddler:http://jsfiddle.net/KWpUC/
答案 3 :(得分:0)
我认为你是在追求这样的事情:
$('<div/>').load('mytextFile.txt', function(textStr) {
var htmlStr = $(this).html(textStr).text();
$(this).html(htmlStr);
}).appendTo('form');
这将有效地编码html实体,返回正确形成的htmlStr
,您可以使用它来设置元素的html()
。