Javascript 单击li标记时获取href值

Javascript 单击li标记时获取href值,javascript,jquery,html,Javascript,Jquery,Html,下面是动态创建的Div的代码 <div align="right" class="row pagination"> <ul class="pagination pagination"> <li class="prev disabled"><span>Previous Label</span></li> <li class="active"><span>1</span>&l

下面是动态创建的Div的代码

<div align="right" class="row pagination">
  <ul class="pagination pagination">
   <li class="prev disabled"><span>Previous Label</span></li> 
   <li class="active"><span>1</span></li> 
   <li><a href="/some_url?page=2" rel="next">2</a></li> 
   <li><a href="/some_url?page=3">3</a></li> 
   <li class="next"><a href="/some_url?page=2" rel="next">Next Label</a></li>
 </ul>
</div>
在上面的代码中,clicking事件正在触发,但我在警报中没有定义

请帮忙

但我在警报中没有定义

是,因为您试图在单击的li没有属性href时向href发出警告

您需要使用选择器中的a或同时使用。查找like来警告li中锚定的href:

您还可以将单击事件直接附加到il的子锚点,如:

$ul.pagination li.clickFunction{ 警报$'a',此.attr'href'; }; 以前的标签 1. 但我在警报中没有定义

是,因为您试图在单击的li没有属性href时向href发出警告

您需要使用选择器中的a或同时使用。查找like来警告li中锚定的href:

您还可以将单击事件直接附加到il的子锚点,如:

$ul.pagination li.clickFunction{ 警报$'a',此.attr'href'; }; 以前的标签 1.
这是一种非常接近您的技术:

$ul.pagination li a.clickfunction e{ 提醒$this.attr'href'; }; 以前的标签 1.
这是一种非常接近您的技术:

$ul.pagination li a.clickfunction e{ 提醒$this.attr'href'; }; 以前的标签 1.
因为元素是动态创建的

您应该为on功能提供一个选择器:

$(document).on('click', 'ul.pagination li', function(e) {      
  alert($(this).children('a').attr('href'));
});
儿童与寻找


.children方法与.find方法的不同之处在于.children只沿DOM树向下移动一个级别,而.find可以向下移动多个级别以选择后代元素、孙子辈等,因为元素是动态创建的

您应该为on功能提供一个选择器:

$(document).on('click', 'ul.pagination li', function(e) {      
  alert($(this).children('a').attr('href'));
});
儿童与寻找

.children方法与.find方法的不同之处在于。children只沿DOM树向下移动一个级别,而.find可以向下移动多个级别以选择后代元素、孙子辈等。此外,

$函数调用中的此项指的是li元素,而不是a。您需要找到一个内部li,然后像这样获得属性href

$ul.pagination li.clickFunction{ 提醒$this.find'a'.attr'href'; }; 以前的标签 1. $this在函数调用中指的是li元素,而不是a。您需要找到一个内部li,然后像这样获得属性href

$ul.pagination li.clickFunction{ 提醒$this.find'a'.attr'href'; }; 以前的标签 1.
$this始终提供当前对象。i、 李先生。这就是它没有hv href值的原因。$这总是给出当前对象。i、 李先生。这就是它不具有hv href值的原因。我找不到标签。这对我来说很有效,谢谢如果你只是想要href,那么最好在锚点上附加处理程序,这样你就不会得到未定义。如果你使用第一种方法,那么你仍然会得到未定义的li,它在itAs@Huangism中没有锚。如果你将锚定位在列表项中,你可以使用click event的建议。我找不到标记。这对我来说很有效,谢谢如果你只是想要href,那么最好在锚点上附加处理程序,这样你就不会得到未定义。如果您使用第一种方法,那么您仍然会在itAs@Huangism中没有锚的li上得到未定义。如果您以列表项中的锚为目标,您可以使用click event的建议。。
$("ul.pagination li a").click(function(e) {
  alert( $(this).attr('href') );
});
$(document).on('click', 'ul.pagination li', function(e) {      
  alert($(this).children('a').attr('href'));
});