gpt4 book ai didi

javascript - Bootstrap Ajax Modal - 显示正文和页脚的问题

转载 作者:行者123 更新时间:2023-12-03 10:09:38 26 4
gpt4 key购买 nike

我正在尝试显示一个 Ajax 模式,该模式将在提交时显示数据库值。但是,我似乎无法让它显示网址中的信息。我对 AJAX 比较陌生,所以这可能是一个非常简单的问题。

我使用它来调用模态(表格中有多个)

<a class="btn btn-small btn-primary" data-toggle="modal" data-target="#exampleModal" data-whatever="<?php echo $Name = $row['Name']; ?>">Read More</a>

模态如下:

<!-- Modal -->
<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="memberModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title" id="memberModalLabel">Member Detail</h4>
</div>
<div class="dash">

</div>

</div>
</div>
</div>

和 AJAX

$('#exampleModal').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget) // Button that triggered the modal
var recipient = button.data('whatever') // Extract info from data-* attributes
var modal = $(this);
var dataString = recipient;

$.ajax({
type: "GET",
url: "getEventDetails.php",
data: dataString,
cache: false,
success: function (data) {
console.log(data);
modal.find('.ct').html(data);
},
error: function(err) {
console.log(err);
}
});
})

最后是 AJAX 中的模式:

    $name = $_GET['name'];  

//executes the SQL query
$result = mysql_query("SELECT * FROM Events WHERE Name = '$Name'");

if (isset($_POST)) {
while ($row = mysql_fetch_array($result)) {
$Date = $row['Date'];
$Name = $row['Name'];
$Type = $row['Type'];
$Region = $row['Region'];
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<!--Style Sheets-->
<link href ="css/bootstrap.min.css" rel="stylesheet">
<link href ="css/style.css" rel="stylesheet">
<link href ="css/font-awesome.css" rel="stylesheet">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Using Bootstrap modal</title>
</head>
<body>

<div class="modal-body">
<?php echo $name ?>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>

</body>
</html>

最佳答案

看来进行 ajax 调用时出现问题。如果我们查看检查器网络选项卡,我们可以看到您对服务器的请求已被取消:

enter image description here

进一步查看控制台显示错误:

enter image description here

从这里我可以看到,您的主站点已设置为通过 HTTPS 运行,但您发出的请求并不安全。仅出于故障排除目的,尝试添加 HTTPS 作为协议(protocol)的文件的完整路径。

  $.ajax({
type: "GET",
url: "/getEventDetails.php/",
data: dataString,
cache: false,
success: function (data) {
console.log(data);
$('.dash').html(data);
},
error: function(err) {
console.log(err);
}
});

跟进

如果您查看从 var_dump($_GET); 返回的内容,您会发现输出不太正确。

array(2) {
["Cardiff_Charity_Race"]=> string(0) ""
["_"]=> string(13) "1431438472999"
}

您可以看到键“Cardiff_Charity_Race”等于“”,“_”等于“1431438472999”。这不是我们想要的。我们希望“name”等于“Cardiff_Charity_Race”,例如:

array(1) {
["name"]=> string(0) "Cardiff Charity Race"
}

要执行此操作,请尝试正确格式化您的数据字符串,如下所示:

$('#exampleModal').on('show.bs.modal', function (event) {
var button = $(event.relatedTarget) // Button that triggered the modal
var recipient = button.data('whatever') // Extract info from data-* attributes
var modal = $(this);
var dataString = 'name=' + recipient;
console.log(dataString);
$.ajax({
type: "GET",
url: "getEventDetails.php",
data: dataString,
cache: false,
success: function (data) {
console.log(data);
modal.find('.ct').html(data);
},
error: function(err) {
console.log(err);
}
});
});

关于javascript - Bootstrap Ajax Modal - 显示正文和页脚的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30190892/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com