認爲我錯過了一些明顯的出血點,並希望得到任何幫助。提前致謝。嘗試在HTML錯誤上使用textContent時出錯。 「無法設置屬性'textContent'未定義」
我有下面的代碼,但是當我運行它休息時說,.textContent不能應用於queryString,因爲queryString是未定義的。
然而,拋開我的是,如果我在這一行之前破壞代碼並查看queryString,它將存儲正確的值,即".titlearea .pagetitle"
。爲什麼這不是在後續行中翻譯?
JSON對象被轉換成一個對象,它返回兩個我希望使用的屬性。名爲termName
的房產和另一個名爲definition
的房產。我想用這些參數的值替換兩個HTML元素的textContent。
我已將termName
和definiton
的值存儲在名爲content
的數組中。我在for...in
循環中這樣做。
然後我想遍歷這個數組,並用content
數組中的相關值替換相關的HTML元素。這是第二個for
循環。
我基本上要的線將被解釋爲:
document.querySelector( 「titlearea .pagetitle」)的textContent = XXXX;
其中xxxx是queryResult[i]
的值。
這裏是完整的代碼。
var searchTerm = JSON.parse(Result.responseText);
var DefDiv = ".titlearea .pagetitle";
var DescDiv = ".titlearea .pagesubtitle";
var holder = [DefDiv, DescDiv];
var content = [];
var x;
// Push the query into an array
for (x in searchTerm.terms[0].term) {
content.push(x);
}
var displayResult = function(queryResult) {
for (var i = 0; i <= holder.length; i++) {
var queryString = holder[i];
document.querySelector(queryString).textContent = queryResult[i];
}
};
displayResult(content);
HTML的外觀如何? – 0x499602D2
順便說一下,在for循環中,'<='應該是'<''。 – 0x499602D2
感謝大衛,你是如何把代碼放在JavaScript語法中的?我會在一秒鐘後發佈HTML,但是我已經測試了硬編碼'「.titlearea .pagetitle」,其中querySelector應該是這樣,並且確實工作正常。 – James