如何在 jquery 选择器中连接字符串和变量?

<?php

for($i=0;$i<5;$i++){

?>

<button id="text<?php echo $i; ?>">hello </button>

<script>

var i=<?php echo $i; ?>;

  $(document).ready(function(){

     $("#text"+i).click(function(){

             alert("hello");

   })


})


</script>

<?php } ?>

如果我有一个id像这样的变量,并且我想使用这段代码在 jQuery 中调用它,它不会给我任何结果。哪里有问题?我怎样才能调用这样的元素button?


收到一只叮咚
浏览 100回答 2
2回答

潇湘沐

最好将脚本移出循环,一次性获取所有按钮,然后绑定单击事件:// Create all buttons, with class "text-button"<?php for($i=0;$i<5;$i++): ?>&nbsp; <button class="text-button" id="text<?php echo $i; ?>">hello </button><?php endif; ?><script>// On document ready$(document).ready(function() {&nbsp; // Find all buttons with class "text-button"&nbsp; $(".text-button").click(function(e) {&nbsp; &nbsp; alert("hello");&nbsp; &nbsp; // Log the clicked button&nbsp; &nbsp; console.log(e.currentTarget);&nbsp; &nbsp; console.log(e.currentTarget.id);&nbsp; })})</script>

杨__羊羊

并且删除$(doucment).ready()将解决您的问题。像这样。<?phpfor($i=0;$i<5;$i++){?><button id="text<?php echo $i; ?>">hello </button><script>var i=<?php echo $i; ?>;&nbsp; &nbsp; &nbsp;$("#text"+i).click(function(){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;alert("hello");&nbsp; &nbsp;});</script><?php } ?>
打开App,查看更多内容
随时随地看视频慕课网APP