変数とエスケープ文字と文字列CONCATENATE

Mr.freelance:

私はこのJSを持っています:

var title = "firts title isn't working";
var html = "<input type='text' value='${title}'>";

私は、結果としてこれを取得したいです:

// "<input type='text' value='firts title isn't working'>"

私はこれを取得します!

// "<input type='text' value='firts title isn' t='' working=''>"
tevemadar:

あなたは、単一および二重引用符の組み合わせを必要としない場合は、テンプレートでダブルスを使用することができますし、テキスト内の単一は動作します:

var title = "firts title isn't working";
var html = `<input type="text" value="${title}">`;
document.body.innerHTML=html;

そうでなければHTMLはHTMLで、@Barmarが指摘したように、それは何のエスケープ文字を持っていない...
...しかし、それは実体があり、その後、あなたは関係なく、周囲のものの、両方を持っています:

var title = "&quot;firts&quot; title isn&apos;t working";
var html = `<input type='text' value='${title}'>`;
document.body.innerHTML=html;

(何ですかfirts?)

そしてもちろん、あなたが「読める」の文字列を持つことができるので、コードに交換を行う、とすることができ.replace("\'","&apos;");、それらは後に。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=33740&siteId=1