将HTML元素的onClick属性设置为for循环

时间:2016-10-22 18:01:27

标签: javascript html onclick

我正在尝试将mi html推入文件名列表,并通过参数传递。在函数中我使用for循环迭代文件并使用document.createElement('li')创建一个nuew'li'元素,然后我尝试向每个项添加一个属性onclick,我希望onclick调用一个函数我在元素的创造中拥有的价值。

我的代码如下: `

function(files){
    for(var i=0; i < files.length; i++){
        var list_element = document.createElement('li');
        list_element.setAttribute('id', 'item_'+ i.toString());

        //set onclick property
        (function(i){
            list_element.onclick = functionToCallInOnClick(i);
        })
    }
}

` 我怎样才能为每个li元素设置这个属性?

2 个答案:

答案 0 :(得分:2)

//set onclick property
(function(i){
    list_element.onclick = function () {
        functionToCallInOnClick(i);
    };
})(i);

答案 1 :(得分:1)

  

您的代码中有一个错误,您错过了一个结束括号。 )

 list_element.setAttribute('id', 'item_'+ i.toString() );