Я хотел бы создать список дивы, один из див хотел это:добавить OnClick события динамически создавать элемент
<div onclick="myFunc(this, 'arrayValue')"></div>
Я хочу, чтобы достичь этого перебирая мой массив и передавая значение индекса в моя функция. Одним из решений, которые работали использовал setAttribute
:
for(var i = 0; i < array.length; i++){
var div = document.createElement("div");
div.setAttribute("onclick", 'myFunc(this, \''+array[i]+'\')');
myDiv.appendChild(div);
}
Единственная проблема заключается в том, что эта часть выглядит очень некрасиво: \''+array[i]+'\')'
Есть другой способ для достижения этой цели? Это будет выглядеть так или что-то подобное:
div.setAttribute("onclick", myFunc(this, array[i]);
кстати. другие решения: когда я использовал div.onclick
, onclick attr не был виден на div (результат: <div></div>
), возможно, я сделал что-то не так.
Возможный дубликат [onClick event в цикле For] (http://stackoverflow.com/questions/15860683/onclick-event-in-a-for-loop) –
The * "... эта часть выглядит действительно уродливая "часть делает это лучше подходит для обзора кода. –
* «другие решения» * часть будет на тему, если вы продемонстрируете, что вы на самом деле сделали, и описали, что было не так, и что вы подразумеваете под * «... attr не было видно» *. Однако это почти наверняка будет дублировать. –