jQuery - 选择嵌套在div ul li中的特定按钮

时间:2012-11-10 04:31:44

标签: php jquery

我承认迷路了。我试图选择一个嵌套在div

中嵌套的行中的行项目的按钮

这是创建菜单栏的php。它通过ajax返回到id为“menubar”的div。那部分工作正常。但是,我的点击功能都没有做任何事情。

echo "<ul>";
echo "<li class = 'menu'><button class = 'menbtn' id='scores'>Scores</button></li>";
echo "<li class = 'menu'><button class = 'menbtn' id='rules'>Rules</button></li>";
echo "<li class = 'menu'><button class = 'menbtn' id='courses'>Courses</button></li>";
echo "<li class = 'menu'><button class = 'menbtn' id='history'>Comments</button></li>";
echo "<li class = 'menu'><button class = 'menbtn' id='history'>Reservation</button></li>";
echo "</ul>";

我假设我必须使用某种嵌套选择,因为id为“得分”的按钮的点击功能 - $('#scours')什么都不做。我已经尝试了各种嵌套选择器并且已经淘汰了。

如果有人能够向我显示id为“得分”的按钮的正确选择器,我会从那里弄明白。

谢谢,

DMD

5 个答案:

答案 0 :(得分:1)

您似乎没有将这些事件放在document.ready函数中。试着把它们放进去。

示例:

$(document).ready(function(){
   $("#scores").click(function(){
       // Your Stuff
   });
});

答案 1 :(得分:0)

这将为您的按钮添加一个事件监听器。

$(document).on('click', '#scores', function (){
    //do something
});

答案 2 :(得分:0)

首先,你的html中有无效的标记按钮注释和具有相同id的保留,第二个

选择器它实际上很简单

$("#scores") //<----

但是,既然你没有详细说明你如何构建HTML,那么很难看出真正的解决方案只能猜测。有一点可能是你需要使用事件on在通过php添加html后触发事件处理程序

例如

$("#score").on("click", function(){ //do something});

答案 3 :(得分:0)

问题是jquery可以读取dom中ajax返回的新元素。 要通知jquery重新阅读dom,你必须现场直播。

$('#scores').live("click",function(){
     alert("you clicked scores");
});

答案 4 :(得分:0)

您可以使用live()方法,在此方法的帮助下,您可以触发通过ajax添加的新元素。

$(document).ready(function(){
  $('#scores').live('click',function(){
    //Your code
  })
});