2016-09-15 61 views
-2

我有像这样的“消化”变量的数据,这在我将对象“建议”转换为字符串之后。HTML`img`标记不能在对象jquery中显示为图像

{"value":"<img src=\"http://localhost/erp/assets/images/product/123.jpg\"> 123123123 t-shirt","data":"ABC098765"} 

<img src="\"http://localhost/erp/assets/images/product/123.jpg\">无法显示为图像,图像标签只显示文本后追加到

这是输出中显示。

html += '<div class="' + className + '" data-index="' + i + '">' + formatResult(suggestion, value, i) + '</div>'; 

的complite脚本

$.each(that.suggestions, function (i, suggestion) { 
     if (groupBy){ 
      html += formatGroup(suggestion, value, i); 
     } 
     html += '<div class="' + className + '" data-index="' + i + '">' + formatResult(suggestion, value, i) + '</div>'; 
    }); 

格式结果

Autocomplete.formatResult = function (suggestion, currentValue) { 
     // Do not replace anything if there current value is empty 
     if (!currentValue) { 
      return suggestion.value; 
     } 

     var pattern = '(' + utils.escapeRegExChars(currentValue) + ')'; 

     return suggestion.value 
      .replace(new RegExp(pattern, 'gi'), '<strong>$1<\/strong>') 
      .replace(/&/g, '&amp;') 
      .replace(/</g, '&lt;') 
      .replace(/>/g, '&gt;') 
      .replace(/"/g, '&quot;') 
      .replace(/&lt;(\/?strong)&gt;/g, '<$1>'); 
    }; 

如何使图像标记为图像时输出显示?

谢谢

+2

需要调用'formatResult'函数代码。 – Sasikumar

+0

你在哪里添加'html'到你的DOM? 'formatResult'是怎么样的? –

+0

@Sasikumar我上面显示的 –

回答

0

使用此stripslashes函数影像而返回suggestion.value剥离斜线。可能是因为额外的斜杠,你的图像显示不正常。

function stripslashes (str) { 
    return (str + '').replace(/\\(.?)/g, function (s, n1) { 
    switch (n1) { 
    case '\\': 
     return '\\'; 
    case '0': 
     return '\u0000'; 
    case '': 
     return ''; 
    default: 
     return n1; 
    } 
    }); 
} 
+0

谢谢你这个工作..: ) –