我在 php 中有这样一个 while 循环:
<?php
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><?php echo $row['user_id']?></td>
<td><?php echo $row['username']?></td>
<td><?php echo $row['reg_phone']?></td>
<td><?php echo $row['provider_id']?></td>
<td><?php echo $row['trans_id'] ?></td>
<td><input type='button' class='<?php echo $row['trans_id']?>' id="yes" value ='Yes' ></td>
</tr>
<?php
}
?>
这里是javascript代码:
<script>
$('#yes').click(function() {
var trans_id=$(this).attr("class");
$.ajax({
url: 'infomation/gc_details_2.php',
data: {'id':trans_id},
success: function(result) {
$('#result').html(result);
}
});
});
</script>
当我点击按钮 Yes
时,它请求 gc_details_2
,结果显示我点击的行的 trans_id
。但它并没有那样显示。它显示第一行的 trans_id
。当我点击其他行的按钮时,它不起作用,也没有显示任何内容。难道我做错了什么?帮帮我
最佳答案
在 HTML 中,一个 id
是唯一标识符。这意味着您只能在一个页面上使用它一次。
因为只有一个可以存在,所以当您附加 click
处理程序,this
点击处理程序的一部分正在引用找到的具有唯一标识符的第一个元素。
更改 id
到 class
如果您想在同一页面上多次使用它。
<td><input type='button' class='yes <?php echo $row['trans_id']?>' value ='Yes' ></td>
和
$('.yes').click(function() {...}
关于javascript - 在 while 循环中使用 ajax 调用 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32005607/