8

再会。

我的页面上有 ul 列表。ul当我点击时,我需要获得价值li

html:

.ddlist {
position: absolute;
width: 316px;
display: none;
background-color: #fff;
border: 1px solid #ccc;
border-top: none;
margin: 0;
padding: 0;
margin-top: -3px;
}

.ddlist li {
list-style: none;
padding: 5px;
}


<ul id="list_t_railway" class="ddlist" style="display: block;">
   <li>Белорусский вокзал</li>
   <li>Казанский вокзал</li>
   <li>Киевский вокзал</li>
</ul>

对于获取价值 ul 我使用脚本:

$("#list_t_railway").on("click", function(){
      alert($(this).val());

    });

但我得到空值......

请告诉我为什么我得到空值以及如何写正确?

PS:你可以在这里看到所有的测试脚本

4

5 回答 5

12

如果要获取元素alert的内容li,可以在所有 li 元素上添加点击处理程序。

$("#list_t_railway li").on("click", function(){
  alert($(this).text());

});

更新小提琴:http: //jsfiddle.net/t7ruw/2/

于 2013-05-23T06:50:46.903 回答
2

li元素没有value,所以.val()不会返回任何东西。此外,没有绑定到<li>元素本身的事件处理程序:

$("#list_t_railway li").on("click", function(){
  alert($(this).text());
});
于 2013-05-23T06:50:57.523 回答
2

试试这个它会给你同样的输出

$(document).on("click","#list_t_railway li", function(){
  alert($(this).text());
});
于 2013-05-23T06:53:48.363 回答
0

如果您想获得 ul 值,请使用它。

$("ul#list_t_railway li").on("click", function(){
 alert($("ul#list_t_railway").text());

});
于 2013-05-23T07:09:14.920 回答
0
$("#list_t_railway li").on("click", function(){alert($(this).html());});
于 2015-02-18T15:58:37.927 回答