how to call onclick function on dynamically created button in javascript

我是研究僧i 提交于 2019-12-12 07:55:34

问题


var del = document.createElement('input');
del.type = 'button';
del.name = 'delll';
del.value = 'del';
del.onClick = 'alert("hi  javascript")';

Here I have dynamically created a input type BUTTON and now I want to call function on button click event. I am using onClick(); function for this. In the above code all is working fine but del.onclick is not working as I want (for generating alert for demo)

I am not using any jquery code in this program so please don't use any jquery code.


回答1:


set the onclick (all lower case) to an anonymous function

del.onclick = function(){ alert('hi javascript');};

note the function is not in quotes like other attributes




回答2:


del.onclick = function () {
    alert("hi  jaavscript");
};

Use small "C" in onClick and pass a function for it.

Demo here




回答3:


Try like this

    var del = document.createElement('input');
    del.setAttribute('type', 'button');
    del.setAttribute('name', 'delll');
    del.setAttribute('value', 'del');
    del.setAttribute('onClick', 'alert("hi  jaavscript")');



回答4:


So to answer the question in details:

del.onclick = '' does not "execute" something within quotes. If you want to execute/call a function, you would want to pass the function as a parameter.

i.e

del.onclick = function() { alert('hi there!')}


来源:https://stackoverflow.com/questions/18821647/how-to-call-onclick-function-on-dynamically-created-button-in-javascript

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!