jquery の html() メソッドを使用する場合、内部に追加された html コードに特殊文字が含まれているため、エスケープする必要がある場合があります。
以下の例:
inst_html = "<a style=color:white' onmouseover = '"; inst_html += "javascript:showme('"+inst.instId+"_"+valId+"');"; inst_html += "' "; $("#inst_div_"+valId).html(inst_html);
このように直接書くと、ChromeやFFブラウザでは問題ありませんが、IE8ではエラーが報告されます。
解決策は、JavaScript の 'escape' を ' に変更して、エラーが報告されないようにすることです。
上記の例は次のように変更されます:
inst_html = "<a style=color:white' onmouseover = '"; inst_html += "javascript:showme('"+inst.instId+"_"+valId+"');"; inst_html += "' "; $("#inst_div_"+valId).html(inst_html);
一部の文字は次のようにエスケープされます:
•&記号: "&"、"&"
• 二重引用符: """、"""
•小なり記号: "<"、"