2016-09-15 15 views
-2

私はこのように" sugestion "varのデータを持っています。これはオブジェクトの" suggestion "を文字列に変換した後です。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>'); 
    }; 

はあなたにこのにstripslashesはsuggestion.valueを戻しながらスラッシュを除去するために機能

+2

デバッグするには、「formatResult」関数コードが必要です。 – Sasikumar

+0

DOMに 'html'を追加する場所は? 'formatResult'はどのように見えますか? –

+0

@Sasikumar私は上記に示しました –

答えて

0

利用ありがとうございました。画像が正しく表示されない余分なスラッシュが原因である可能性があります。

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

の代わりに相対パスを使用する必要があります。 ) –

関連する問題