码迷,mamicode.com
首页 > Web开发 > 详细

返回的json内容不能在textare中显示,可以在console中显示

时间:2015-07-13 15:59:15      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:

1. 场景:(1)在controller的文件中有语句echo json_encode($ret);  位置1

(2)在显示页面test.html中,有如下代码:

function doSubmit(obj){
 objTable = obj.parentNode.parentNode.parentNode.parentNode;
 objTexts = objTable.getElementsByTagName(‘input‘);
 objRet = objTable.getElementsByTagName(‘textarea‘)[0];   位置2
 strAction = objTexts[0].value;
 strParam = objTexts[1].value;
 objData = {a: strAction, p: eval("(" + strParam + ")")};
 console.log(objData);
 $.ajax({
  type: "POST",
  url: ‘index.php/data‘,
  dataType: "text",
  data: objData,
  success: function(ret, status, xhr){
   objRet.innerText = ret;     位置3
   result = eval("(" + ret + ")");
   console.log(result);
  },

2. 问题:

从上述代码 objRet = objTable.getElementsByTagName(‘textarea‘)[0];   位置2 和 位置3 中推断,

应该在textarea中显示返回内容。但是实际中textarea中什么也没有返回。

3. 解决方法:

objRet.innerText改为objRet.innerHTML

innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器,因此,尽可能地去使用innerHTML,而少用 innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签。

返回的json内容不能在textare中显示,可以在console中显示

标签:

原文地址:http://www.cnblogs.com/daiqingealice/p/4642892.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!