我的代碼是Javascript。如何防止HTML符號被取代< "等
var button = document.createElement('a');
button.innerHTML = '<div class="some_class"><div>Download</div><div class="quality">'+ element[1] +' ('+ element[2] + 'ГБ)</div></div>';
我通過AJAX加載這個劇本,我想它來執行。 但瀏覽器加載它:
button.innerHTML = '<divclass="some_class"><div>Download</div><div class="quality">'+ element[1] +' ('+ element[2] + 'ГБ)</div></div>'
這當然會導致語法錯誤。
如何解決?
編輯:如果我直接去頁面http://myserver.com/script.js - 它正常工作。但是,如果我使用ajax來加載它,像這樣:
$.ajax({url: "http://myserver.com/script.js?url=" +
location.href, dataType: "script"});
它得到HTMLEncoded。
這不會解決問題,但爲什麼你把'div'放在'a'元素裏面?非常不尋常。你爲什麼要調用''''''按鈕''。你不覺得代碼應該是可讀和簡單的嗎? – ElmoVanKielmo
@Mikhail我不確定你的值是在哪裏獲得HTMLEncoded,這真的是我猜測的「問題」的路線。 (儘管出於安全原因可能會這樣做)。但你發佈的代碼並沒有顯示實際的問題,因爲採取面值它會工作... http://jsfiddle.net/6kYP9/ –
@StephenJames我已經添加了一些解釋。你能看一下嗎? –