0
我想爲輸入文本控件添加事件處理程序。這些控件是動態生成的。我的代碼是這樣的:無法在javascript中設置事件處理程序
的JavaScript:
var settings_check = new Array("checkVMName()","checkDiskMB()","checkMemMB()","checkEsx()","checkDatastore()");
...
_inputbox = document.createElement("input");
_inputbox.type = "text";
_inputbox.id = settings[zindex];
_inputbox.onblur = settings_check[zindex];
_hint = document.createElement("hint");
_hint.id = settings[zindex] + "_Label2";
_hint.innerText = settings_hint[zindex];
mycurrent_cel2.appendChild(_inputbox);
mycurrent_cel2.appendChild(_hint);
但這種方式是行不通的。我用Firebug檢查了HTML,並且根本沒有輸入文本控件的「onblur」屬性。
HTML
<tr> <td>....</td> <td><input type="text" id="Datastore"> <hint id="Datastore_Label2">start with /</hint> </td> </tr>
我也嘗試過其他方法來設置事件處理程序像
_inputbox.onblur = function(){alert("test");};
或
_inputbox.setAttribute("onblur",func);
氖ither的作品。 :(
如果我手動添加onblur = function(){...}的輸入文本控件在HTML與Firebug和執行,onblur的確如此,問題是:如何設置事件處理程序爲在JavaScript控制?這有什麼錯在我的代碼?謝謝。
謝謝雅各布。我相信你是對的,即使我沒有嘗試過你的建議,因爲代碼是在我的家用電腦中,而我現在不在家。我嘗試後會讓你知道。再次感謝! – Landy 2010-12-08 01:50:43