从按钮获取值echo$row


<?php while($row = mysqli_fetch_array($result)): ?>
<tr>
<td><?php echo $row['mapid'] ?></td>
<td><button id="m" type="button" value="<?php echo $row['map'] ?>" onclick="ready()">ddd</button></td>
</tr>
<?php endwhile;?>
</table>

<iframe id="k" src="" width="600" height="450" frameborder="0" style="border:0;" allowfullscreen="" aria-hidden="false" tabindex="0"></iframe>  

<script>
function ready() {
var x = document.getElementById('m').getAttribute('value');
var y =  "https://www.google.com/maps/embed?pb=";
var z = y + x;
alert(z);
document.getElementById("k").src = z;
}
</script>           

我确实点击按钮打开谷歌地图,它工作正常,但它从第一行获得值,因为id是相同的,请帮助

您可以在ready()中使用this上下文。

<?php while($row = mysqli_fetch_array($result)): ?>
<tr>
<td><?php echo $row['mapid'] ?></td>
<td><button type="button" value="<?php echo $row['map'] ?>" onclick="ready.call(this)">ddd</button></td>
</tr>
<?php endwhile;?>
</table>

<iframe id="k" src="" width="600" height="450" frameborder="0" style="border:0;" allowfullscreen="" aria-hidden="false" tabindex="0"></iframe>  

<script>
var ready = function() {
var y =  "https://www.google.com/maps/embed?pb=";
var z = y + this.value;
alert(z);
document.getElementById("k").src = z;
}
</script>   

最新更新