Ich habe eine Tabellenzeile, die ein Textfeld enthält und es hat einen onclick, der einen JavaScript-Kalender anzeigt ... Ich füge Zeilen der Tabelle mit Textfeld hinzu, aber ich weiß nicht, wie onclick-Ereignis an das JavaScript-generierte Textfeld anhängen ...Wie Anfügen von OnClick-Ereignis für eine Javascript-generierte Textbox?
<input class="date_size_enquiry" type="text" autocomplete="off"
onclick="displayDatePicker('attendanceDateadd1');" size="21" readonly="readonly"
maxlength="11" size="11" name="attendanceDateadd1" id="attendanceDateadd1"
value="" onblur="per_date()" onchange="fnloadHoliday(this.value);">
Und mein JavaScript erzeugt eine Textbox,
var cell2 = row.insertCell(1);
cell2.setAttribute('align','center')
var el = document.createElement('input');
el.className = "date_size_enquiry";
el.type = 'text';
el.name = 'attendanceDateadd' + iteration;
el.id = 'attendanceDateadd' + iteration;
el.onClick = //How to call the function displayDatePicker('attendanceDateadd1');
e1.onblur=??
e1.onchange=??
cell2.appendChild(el);
Ich glaube, das Anfügen von Ereignissen dynamisch ist nicht Cross-Browser, so dass Sie möglicherweise anderen Code für verschiedene Browser schreiben müssen. Ich empfehle, zu diesem Zweck eine JS-Bibliothek wie JQuery zu verwenden. Mit JQuery ist es so einfach: '$ ('# elementId'). Click (function() {/ * Mach was du willst * /});' –
@eyazici: Die DOM Manipulationsstrategie, die das OP benutzt, ist sicher mit Ausnahme von 'setAttribute()'. – Asaph