gpt4 book ai didi

php - 为什么页面上先前单击的链接的文本会显示在 AJAX 请求中?

转载 作者:行者123 更新时间:2023-11-28 02:45:47 25 4
gpt4 key购买 nike

这是一个引导模式,我将 AJAX 请求的结果放入

<div class="modal hide" id="myModal">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>Modal header</h3>
</div>
<div id="modal-body"></div>
<div class="modal-footer">
<a href="#" class="btn" data-dismiss="modal">Close</a>
</div>
</div>

JavaScript 代码如下所示

<script type="text/javascript">
$('#myModal').modal('hide');
$('div.divBox a').click(function(){
var vendor = $(this).text();
console.log(vendor);
$('#myModal').on('show', function(){
$.ajax({
type: "GET",
url: "ip.php",
data: "id=" + vendor,
success: function(html){
$("#modal-body").html(html);
}
});
});
});
$('#myModal').on('hide', function () {
$("#modal-body").empty();
<?php unset($_GET); ?>;
})
</script>

ip.php 文件是

anchor 链接代码如下所示

           <tbody>
<?php foreach ($rowarr as $k => $v) { ?>
<tr>
<td><?php echo $k ?></td>
<td>
<div class="divBox">
<a data-toggle="modal" href="#myModal"><?php echo $v; ?></a>
</div>
</td>
</tr>
<?php } ?>
</tbody>

$k 是一个数字。 $v 是一个带有空格和特殊字符的名称。

console.log(vendor) 显示我在 CDT 中单击的链接的文本。但模态的输出发生了变化。它会遍历我之前单击的所有链接文本,并不断替换它们,最后得到最新的链接文本。

因此,如果按此顺序单击链接,控制台输出将如下所示

Microsoft Corporation
IBM Corp
Hewlett-Packard
Apple

模态中的文本将以

开头
Array ( [id] => Microsoft Corporation )

然后替换为

Array ( [id] => IBM Corp )

然后替换为

Array ( [id] => Hewlett-Packard)

然后以

结束
Array ( [id] => Apple )

什么是跟踪页面上点击的链接?每次单击新链接时都需要重置它吗?

编辑:回应“你尝试过什么?”

我添加了$("#modal-body").empty();在那里希望也许这是我需要清除的模态体。不是这样的。然后我想也许 GET 变量需要在关闭模式时重置,所以我添加了 <?php unset($_GET); ?>; 。但 print_r($_GET) 显示该数组仅包含一个数组元素,而不是之前单击的所有链接。所以我不知道点击链接的历史记录还存储在哪里。

最佳答案

基本上,每次您单击 divBox 链接时,它都会向 myModal 'show' 事件添加一个新的处理程序。因此,基本上在单击 5 个不同的 divBox 链接后​​,myModal 的 show 事件将循环通过 5 个不同的处理函数。

基本上,您需要先删除之前添加的“show”处理程序,然后再添加新的处理程序。

$('#myModal').off('show');

Best way to remove an event handler in jQuery?

关于php - 为什么页面上先前单击的链接的文本会显示在 AJAX 请求中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11908793/

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