2 回答
TA贡献1890条经验 获得超9个赞
您不能有重复的 ID。使用类而不是 ID。然后使用适当的 DOM 选择函数在单击的元素旁边找到具有该类的元素。
此外,将函数从循环中取出,不需要为每一行重新定义。
<script>
function copyToClipboard(img) {
var $element = $(img).siblings(".p1");
var $temp = $("<input>");
$("body").append($temp);
$temp.val($element.text()).select();
document.execCommand("copy");
$temp.remove();
}
</script>
<?php
$egest='SELECT * FROM gestion';
$result=mysqli_query($con,$egest);
while ($row = mysqli_fetch_array($result)){
//echo $row['subcat_nombre'];
?>
<table class="estilo-ps">
<tr>
<td colspan="3" class="td-tit"><b><?php echo $row['gest_nombre'] ?></b></td>
</tr>
<tr class="tr-borders">
<th class="th-border-cent">Contrasenya</th>
</tr>
<tr class="tr-borders">
<td class="td-border-cent">
<center>
<p hidden="hidden" class="p1"><?php echo $row['gest_contra']; ?></p><br>
<p>clic per copiar la contrasenya</p>
<img src="img/key.png" class="copy" onclick="copyToClipboard(this)"/>
</center>
</td>
</tr>
</table>
<?php
}
?>
TA贡献1876条经验 获得超7个赞
<?php
$egest='SELECT * FROM gestion';
$result=mysqli_query($con,$egest);
?>
<script>
function copyToClipboard(element) {
var $temp = $("<input>");
$("body").append($temp);
$temp.val($(element).text()).select();
document.execCommand("copy");
$temp.remove();
}
</script>
<table class="estilo-ps">
while ($row = mysqli_fetch_array($result)){
//echo $row['subcat_nombre'];
?>
<tr>
<td colspan="3" class="td-tit"><b><?php echo $row['gest_nombre'] ?></b></td>
</tr>
<tr class="tr-borders">
<th class="th-border-cent">Contrasenya</th>
</tr>
<tr class="tr-borders">
<td class="td-border-cent">
<center>
<p hidden="hidden" id="p1"><?php echo $row['gest_contra']; ?></p><br>
<p>clic per copiar la contrasenya</p>
<img src="img/key.png" class="copy" onclick="copyToClipboard('#p1')"/>
</center>
</td>
</tr>
<?php
}
?>
</table>
您正在尝试循环脚本。脚本应该只声明一次。
将您的 while 循环移到 之后<table>。
- 2 回答
- 0 关注
- 413 浏览
添加回答
举报