Как вызвать окно оповещения, нажав на элемент списка? - PullRequest
1 голос
/ 07 октября 2011

Может ли кто-нибудь помочь мне с моим простым сценарием? У меня есть список цветов в html-коде, и мне просто нужно сделать свой js-код для всплывающего оповещения со значением элемента списка, по которому щелкнули. Пожалуйста, помогите мне! Вот что у меня есть:

HTML

<ul id="mylist">
  <li>White </li>
  <li>Silver </li>
  <li>Dark Gray</li>
  <li>Khaki </li>
</ul>

А вот код JS (он отображает предупреждение со значением элемента списка при загрузке окна, но мне нужно, чтобы он отображался после нажатия на каждый элемент)

<script language="JavaScript">
<!--
  var a = document.getElementById('mylist').document.getElementsByTagName('li');
  var b=[];
  for(i=0;i<a.length;i++)
  {
    b=a[i].innerText;
    alert(b);
  } 
//-->
</script>

Ответы [ 5 ]

4 голосов
/ 07 октября 2011
document.getElementById('mylist').addEventListener('click', function(event) {
  if ('LI' != event.target.tagName) return;
  alert(event.target.innerText);
}, false);

См. Также:

2 голосов
/ 07 октября 2011
var a = document.getElementById('mylist').getElementsByTagName('li');

for(var i = 0; i < a.length; i++){
      a[i].onclick = function(){
            alert(this.innerHTML);
      }
}

Демо: http://jsbin.com/ayefap/2/

0 голосов
/ 07 октября 2011
<ul id="mylist">

    <li><a href="javascript:void(0)" onclick="clickMe(this)">White</a></li>
        <li>Silver </li>
            <li>Dark Gray</li>
                <li>Khaki </li>
</ul>

Добавьте это в ваш головной раздел:

<script type="text/javascript">
function clickMe(cid){
alert(cid.innerHTML);

}
</script>
0 голосов
/ 07 октября 2011

Не вдаваясь в подключение обработчиков кликов в сыром JavaScript, вы можете сделать это:

<li><a href="javascript://" onclick="alertMe(this)">White</a></li>

JS:

function alertMe(element) {
      alert(element.innerText)
}
0 голосов
/ 07 октября 2011
var a = document.getElementById('mylist').getElementsByTagName('li');

document.getElementById("myList") не имеет .document

Если вы используете консоль Firebug или Chrome, вы получите эту ошибку там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...