for($i=0;$i<5;i++)
{
<h2><a href="" class="question_title"><?php echo $value['asked_title'];?> </a></h2>
<input type="hidden" name="question_id" value="<?php echo $i; ?>" id="question_id" class="question_id" >
}
Jquery :
$('.question_title').click(function () {
var value = $('#question_id').val();
alert(value);
});
此代码中的好友question_id将为循环携带不同的值。在这里,我有 writtern 代码来根据点击 ahref 类的循环获取值,我想获取隐藏值的值,例如在第一次迭代标题中是 cow 在点击 ahref 时它应该提醒 0(question_id值(。单击第二个标题猫时,它应该得到警报 1,就像单击 5 个不同的标题一样,它应该分别显示 0-4,但现在单击不同的标题时,它只提醒 0 而不是其他值。任何人都可以建议我如何实现它.
获取父h2
,然后接下来.question_id
如下所示。
$('.question_title').click(function() {
var value = $(this).parent().next('.question_id').val();
alert(value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h2><a href="" class="question_title">Title 0</a></h2>
<input type="hidden" name="question_id" value="0" id="question_id" class="question_id">
<h2><a href="" class="question_title">Title 1</a></h2>
<input type="hidden" name="question_id" value="1" id="question_id" class="question_id">
顺便说一句,您对多个元素使用相同的 id question_id
。
由于"id"是唯一值,因此它将仅获得第一个元素。
试试这个:
for($i=0;$i<5;i++)
{
<h2><a href="" class="question_title" id="<?php echo $i; ?>"><?php echo $value['asked_title'];?> </a></h2>
}
Jquery :
$('.question_title').click(function()
{
alert(event.target.id);
});
for
<?php
for($i=0;$i<5;i++)
{
?>
<h2><a href="#" class="question_title" data-tell="<?php echo $i; ?>"><?php echo $value['asked_title'];?> </a></h2>
<input type="hidden" name="question_id" value="<?php echo $i; ?>" id="question_id" class="question_id" >
<?php } ?>
并在脚本使用
$('.question_title').click(function() {
alert($(this).attr("data-tell"));
});
您在所有五个隐藏字段中具有相同的 id question_id
。
你可以这样拥有它..
for($i=0;$i<5;i++)
{
echo '<h2><a href="" class="question_title" data-value="'.$i.'">'.$value['asked_title'].'</a></h2>';
}
jquery
$('.question_title').click(function()
{
var value = $(this).data('value');
alert(value);
});