我一直在研究一個大型的Javascript程序,並且已經創建了一個函數來動態創建HTML表,通過定義內容來填充表的數組。我想調用函數看起來像這樣:將字符串和函數中的變量傳遞給另一個函數
tableConstructor([
"<p>" + changingVariable + "</p>",
"<p>" + arrayOfData[changingVariable] + "</p>",
secondFunction(changingVariable),
"<button onclick='thirdFunction(" + changingVariable + ")'></button>"
]);
每行都是我創建的表中的不同列的內容。
問題在於,在將數據發送到tableConstructor
函數之前總是對changingVariable
進行評估,以便整個表格最終在每列下方填充相同的數據。
我需要changingVariable
和使用changingVariable
的函數/數組進行評估,只要它們在tableConstructor
函數中但不在之前。有誰知道我能如何讓這個工作?我希望它適用於上面給出的四個示例行中的每一行。這是我目前爲tableConstructor
函數本身所得到的結果:
function tableConstructor (content) {
tableRows = [];
tableDowns = [];
for (i in arrayOfData) {
tableRows[i] = document.createElement("tr");
containerElement.appendChild(tableRows[i]);
for (changingVariable in content) {
tableDowns[tableDowns.length] = document.createElement("td");
tableRows[i].appendChild(tableDowns[tableDowns.length - 1]);
tableDowns[i * parseInt(content.length) + parseInt(changingVariable)].innerHTML = content[changingVariable];
}
}
}
難道你不能通過一個函數來生成數據作爲參數,而不是數組嗎? – skypjack
你能舉一個例子說明如何工作? – Nalax