jQuery .text()不显示HTML

时间:2012-10-11 17:47:45

标签: jquery ajax

  

可能重复:
  jquery .text doesn’t render HTML elements into the DOM

我有一个AJAX函数从服务器中提取<img>标记。我的问题是,当我将页面上.text()的{​​{1}}属性设置为该span标记时,不会呈现HTML。相反,它只是将标记显示为文本。

这是我的代码:

<img>

我的HTML:

// jQuery
$.ajax({
  url: 'forms/scripts/getStatus.php',
  dataType: 'json',
  type: 'POST',
  data: {
      subfolderID:rowID
  },
  async: false,
  success: function(data){
      if(data.errorsExist == "Y"){
          alert(data.appError);
      }
      else{
          $("#trackStatus").text(data.status);    
      } 
  },
  error: function(){
      alert("Error! Could not retrieve tracking status");
  }
});

如何将<td><span id="trackStatus"></span></td> 标记呈现为HTML?也许我不应该使用img方法使用span ...?

3 个答案:

答案 0 :(得分:5)

使用.html()代替.text()

答案 1 :(得分:2)

.text()转义HTML。 .html()没有,因此请使用.html()

答案 2 :(得分:1)

这就是text功能的目的:

  

我们需要知道此方法会转义提供的字符串   必要的,以便它能在HTML中正确呈现。

改为使用html功能:

$("#trackStatus").html(data.status);