好的,所以我有一个mysql表(带有id,名称,照片等),显示每个id的图像。当我点击每个图像时,它会打开一个模态,我想显示给定id的名称。
<input type="image" src="imatges/<?php echo $row['foto']; ?>" id="<?php echo $row['id']?>" class="img-rounded image" width="250px" height="200px" data-target="#myModal"/>
问题是我尝试使用Jquery获取图像ID然后将其传递给php,以便它可以在模态上显示名称,但它不起作用。它反而说“不”。我怎样才能解决这个问题?提前谢谢。
<!-- Modal -->
<div class="modal fade" id="myModal" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="btn close" data-dismiss="modal">X</button>
<?php
$id = isset($_POST['id']);
if(!$id){
echo "no";
}
$prepIexec2 = $conn->prepare('SELECT nom FROM TaulaGats WHERE id = :id');
$prepIexec2->bindParam(':id', $id);
$prepIexec2->execute();
while($row = $prepIexec2->fetch(PDO::FETCH_ASSOC)){
extract($row);
?>
<h4 class="h4"><span></span><?php echo $row; } ?></h4>
Jquery的
$(document).ready(function(){
$(".image").click(function(){
var id = $(this).attr('id');
$.ajax({
type: "POST",
data: { id: id },
success: function (result) {
$("#myModal").modal();
}
});
});
});
答案 0 :(得分:0)
jQuery代码需要使用PHP脚本返回的信息更新DOM。
你应该有一个脚本只返回你想要查找的名称,而不包含所有HTML。
<?php
if (!isset($_POST['id'])) {
echo "no";
exit;
}
$id = $_POST['id'];
require_once("dbsetup.php"); // or whatever you use to initialize your database connection
$prepIexec2 = $conn->prepare('SELECT nom FROM TaulaGats WHERE id = :id');
$prepIexec2->bindParam(':id', $id);
$prepIexec2->execute();
$row = $prepIexec2->fetch(PDO::FETCH_ASSOC);
if ($row) {
echo $row['nom'];
} else {
echo "no";
}
然后你的Javascript看起来像:
$(document).ready(function(){
$(".image").click(function(){
var id = $(this).attr('id');
$.ajax({
url: "getNom.php",
type: "POST",
data: { id: id },
success: function (result) {
$("#myModal h4 span").text(result);
$("#myModal").modal();
}
});
});
});