Я нуб,нужна помощь (перебор массива)
Мне нужно при клике на элемент в списке открыть ссылку (любую).
Найти нужный массив с помощью перебора. ((Найти массив "Город2" с помощью перебора и задать ему ссылку)) <div id="list"></div> var div = document.getElementById('list'); var city = ["Город1", "Город2", "Город3","Город4","Город5","Город6"]; for (var i = 0, ln = city.length; i < ln; i++) { var goroda = document.createElement('li'); goroda.innerHTML = city[i] list.appendChild(goroda); :help: |
нифига не понял:(
|
Цитата:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <div id="list"></div> <script> var div = document.getElementById('list'); var city = ["Город1", "Город2", "Город3","Город4","Город5","Город6"]; for (var i = 0, ln = city.length; i < ln; i++) { var goroda = document.createElement('li'); goroda.innerHTML = city[i]; list.appendChild(goroda); goroda.onclick=()=>location = 'http://google.com/'; } </script> </body> </html> |
Нужно найти массив "Город2" путём перебора всех элементов массива ,когда "Город2" найдётся ,нужно задать ему ссылку
|
[].forEach.call(document.querySelectorAll('#list>li'), el => { if (el.textContent === "Город2") el.onclick=()=>location = 'http://google.com/'; }); |
или так (
if (city[i] === "Город2") goroda.onclick=()=>location = 'http://google.com/';) вот эту строку в твой код добавил <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <div id="list"></div> <script> var div = document.getElementById('list'); var city = ["Город1", "Город2", "Город3","Город4","Город5","Город6"]; for (var i = 0, ln = city.length; i < ln; i++) { var goroda = document.createElement('li'); goroda.innerHTML = city[i]; if (city[i] === "Город2") goroda.onclick=()=>location = 'http://google.com/'; list.appendChild(goroda); } </script> </body> </html> |
Спасибо большое
|
Часовой пояс GMT +3, время: 11:35. |