Javascript 在类中单击获取ID的值

Javascript 在类中单击获取ID的值,javascript,jquery,Javascript,Jquery,我的结果是ui-id-1。但是,如果需要锚定标记的ui-id-5和其他标记的id $(.ui角点全部”)。单击(函数(){ 警报(this.id); }); 卡姆兰汗 穆达西尔 马蒙博士 因此为li单击编写jquery函数 $("li").click(function () { alert($(this).find('a').attr('id')); }); 将使用的选择器更改为仅应用于a元素 $("a.ui-corner-all").click(function()

我的结果是
ui-id-1
。但是,如果需要锚定标记的
ui-id-5
和其他标记的
id

$(.ui角点全部”)。单击(函数(){
警报(this.id);
});

  • 卡姆兰汗
  • 穆达西尔
  • 马蒙博士

因此为
li
单击编写jquery函数

$("li").click(function () {
    alert($(this).find('a').attr('id'));
});

将使用的选择器更改为仅应用于
a
元素

$("a.ui-corner-all").click(function() {
  alert(this.id);
});

$(“a.ui-corner-all”)。单击(函数(){
警报(this.id);
});

  • 卡姆兰汗
  • 穆达西尔
  • 马蒙博士

对于
li
元素,没有
id
。另外,要获取当前jquery对象,还需要$(this)来使用其他jquery方法。您需要将事件从
ul
委托给
li
,并使用
find
查找具有id属性的
a
标记

$(“.ui角落所有li”)。单击(函数(){
警报($(this.find('a').attr('id'));
});

    卡姆兰·汗 Muddassir M.A.al mamun博士
$(“ul li”)。单击(函数(){
警报($(this.find('a').attr('id'));
});

    卡姆兰·汗 Muddassir M.A.al mamun博士
    卡姆兰·汗 Muddassir M.A.al mamun博士

在这种情况下,您需要将事件处理程序附加到
a
元素,而不是
ul
元素。您想要单击的li的id吗?我无法在html中更改。ul和li的等级相同,但我想得到的是li而不是ul的id。您的
li
没有
id
。如我所说,如果您可以为我编写一些代码,请选择
a
元素,而不是
.ui角all
@rorymcrossan
指的是实际单击的DOM节点。因此,
这个.id
是完全有效的。您必须在所有答案中标记一个为已接受。你可以分享你自己的答案。这很好。这个代码实际上不起作用。您正试图在
a
中查找
a
,因为
将引用已单击的
a
a
元素不能嵌套(并且您的代码没有嵌套它们),因此这将始终警告
未定义的
@MuddassirIrahad您的代码根本不起作用:-同意@GabrielePetrioli
$("#ui-id-1").on('click', 'a', function () {
  alert($(this).find('a').attr('id'));
});
<ul class="ui-autocomplete ui-front ui-menu ui-widget ui-widget-content ui-corner-all" id="ui-id-1" tabindex="0">
  <li class="ui-menu-item" role="presentation"><a id="ui-id-5" class="ui-corner-all" tabindex="-1">Kamran Khan</a></li>
  <li class="ui-menu-item" role="presentation"><a id="ui-id-6" class="ui-corner-all" tabindex="-1">Muddassir</a></li>
  <li class="ui-menu-item" role="presentation"><a id="ui-id-7" class="ui-corner-all" tabindex="-1">Dr. M. A. al-mamun</a></li>
</ul>