目前正在學習 javascript 并對這種可能性感到好奇。我在 .JS 檔案中有此代碼
var x = document.createElement("IMG");
x.setAttribute("src", "helpimage.png");
x.setAttribute("width", "20");
x.setAttribute("height", "20");
x.setAttribute("alt", "help image");
x.setAttribute("id","image");
var row = document.createElement('div');
row.classList.add('row');
var label = document.createElement('div');
label.id = machineName '-label';
label.classList.add('col-md-5');
label.innerHTML = humanName ':';
label.appendChild(x);
label.onclick = function() {myFunction()};
row.appendChild(label);
這個函式名為“MyFunction”
function myFunction() {
document.getElementById(machineName '-label').innerHTML = "YOU CLICKED ME!";
}
這段代碼的作用是首先呼叫一個函式,該函式創建一個帶有標簽的簡單表單元素。我在標簽上附上了一張標有“x”的圖片。我希望能夠使用 onclick 事件單擊該標簽,然后將其更改為我想要的任何內容。(這里只是測驗)
因此,一旦我的第一個函式生成了我的表單,我就想單擊我的標簽并將其更改為“您單擊了我”。
除了當我點擊圖片沒有任何反應。
誰能告訴我我做錯了什么?
我想點擊的圖片。 
uj5u.com熱心網友回復:
將要替換的文本放在另一個嵌套元素中,而不是放在也包含影像的元素中。
var x = document.createElement("IMG");
x.setAttribute("src", "helpimage.png");
x.setAttribute("width", "20");
x.setAttribute("height", "20");
x.setAttribute("alt", "help image");
x.setAttribute("id", "image");
var row = document.createElement('div');
row.classList.add('row');
var label = document.createElement('div');
let machineName = "filename";
label.id = machineName '-label';
label.classList.add('col-md-5');
let humanName = "File Name";
let text = document.createElement("span");
text.id = machineName "-text";
text.innerHTML = humanName ':';
label.appendChild(text);
label.appendChild(x);
label.onclick = function() {
myFunction()
};
row.appendChild(label);
document.body.appendChild(row);
function myFunction() {
document.getElementById(machineName '-text').innerHTML = "YOU CLICKED ME!";
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/346140.html
標籤:javascript 功能 点击 dom事件
上一篇:執行計算時變異不添加正確的列名
