在jquery中处理php for循环中对元素的单击
我一直在尝试将jquery click事件与php for循环中的一个元素一起使用。如何在单击之前将计数器值转移到jquery 我的PHP代码:在jquery中处理php for循环中对元素的单击,php,jquery,Php,Jquery,我一直在尝试将jquery click事件与php for循环中的一个元素一起使用。如何在单击之前将计数器值转移到jquery 我的PHP代码: <?php $counter=0;foreach($a as $abc){$counter++;?> <div id="mail_<?php echo $counter;?>" class="ma" /> <?php }?> 在jquery中单击之前如何使用此计数器变量。为什么在单
<?php $counter=0;foreach($a as $abc){$counter++;?>
<div id="mail_<?php echo $counter;?>" class="ma" />
<?php }?>
在jquery中单击之前如何使用此计数器变量。为什么在单击之前使用?在下面的示例中,您将获得单击元素的计数器值
$(".ma").on('click', function(e) {
var counter = $(this).attr('id').split('_')[1];
});
请注意,您可以在不使用id的情况下执行相同的操作,因为计数器从0开始,只需逐个递增
$(".ma").on('click', function(e) {
var counter = $(this).index();
});
如果需要计数器的最终值,可以使用
$(“.ma”).length
示例:完整HTML代码。只需在浏览器中复制、粘贴和运行。[在RafH溶液中使用]
<html>
<head>
<title>jQuery Test</title>
<style type="text/css">
div { color:blue; margin:3px; cursor:pointer; }
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$(".ma").click(function() {
var counter = $(this).attr('id').split('_')[1];
alert("Counter ID "+counter);
});
});
</script>
</head>
<body>
<?php
for($counter=1;$counter<=10;$counter++)
{
?>
<div id="mail_<?php echo $counter;?>" class="ma" />Test</div>
<?php
}
?>
</body>
</html>
jQuery测试
div{颜色:蓝色;边距:3px;光标:指针;}
$(文档).ready(函数(){
$(“.ma”)。单击(函数(){
var counter=$(this.attr('id').split('uu')[1];
警报(“计数器ID”+计数器);
});
});
点击前意味着什么?Onload本身?我怎么才能得到那个计数器变量值??parseInt(element.getAttribute('id'))?为什么您甚至需要这个呢?jquery如何识别单击了哪个元素??$(“.ma”)表示类为“ma”的所有元素。在此选择器的click事件处理程序中,$(this)引用当前单击的“.ma”元素。
<html>
<head>
<title>jQuery Test</title>
<style type="text/css">
div { color:blue; margin:3px; cursor:pointer; }
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$(".ma").click(function() {
var counter = $(this).attr('id').split('_')[1];
alert("Counter ID "+counter);
});
});
</script>
</head>
<body>
<?php
for($counter=1;$counter<=10;$counter++)
{
?>
<div id="mail_<?php echo $counter;?>" class="ma" />Test</div>
<?php
}
?>
</body>
</html>