Php 如何检查是否正在单击手风琴,以便将值传递给ajax?
我试图检查手风琴是否被触发或点击。我有多个手风琴。如果我要点击一个,我如何确定手风琴是否被点击 这是我目前掌握的代码:Php 如何检查是否正在单击手风琴,以便将值传递给ajax?,php,jquery,html,ajax,Php,Jquery,Html,Ajax,我试图检查手风琴是否被触发或点击。我有多个手风琴。如果我要点击一个,我如何确定手风琴是否被点击 这是我目前掌握的代码: <div class="panel-heading"> <h4 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne"></a> </h4>
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion"
href="#collapseOne"></a>
</h4>
</div>
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion"
href="#collapseTwo"></a>
</h4>
</div>
<div id="collapseOne" class="panel-collapse collapse">
<div class="panel-body">
// Value inserted here after passing to ajax
</div>
</div>
<div id="collapseTwo" class="panel-collapse collapse">
<div class="panel-body">
// Value inserted here after passing to ajax
</div>
</div>
$.ajax(
{
type: "POST",
url: "getAccordion.php", // something I want to query
data: {type:type},
dataType: 'json',
success:function(data)
{
//pass values to body of accordion
}
}
//在传递到ajax后在此插入的值
//在传递到ajax后在此插入的值
$.ajax(
{
类型:“POST”,
url:“getAccordion.php”//我想查询的内容
数据:{type:type},
数据类型:“json”,
成功:功能(数据)
{
//将值传递给手风琴琴体
}
}
您可以执行以下操作
$('a[data toggle=“collapse”]”)。单击(函数(){
console.log($(this.attr('href'));//在这里您将获得目标ID
var targetID=$(this.attr('href');
/*$.ajax({
url:url,
方法:“POST”,
数据:{id:targetID}
...
});*/
});
//在传递到ajax后在此插入的值
您可以执行以下操作
$('a[data toggle=“collapse”]”)。单击(函数(){
console.log($(this.attr('href'));//在这里您将获得目标ID
var targetID=$(this.attr('href');
/*$.ajax({
url:url,
方法:“POST”,
数据:{id:targetID}
...
});*/
});
//在传递到ajax后在此插入的值
您希望从初始页面加载中“延迟”加载一些额外内容
您不会希望每次单击选项卡时都加载它!因此,存储已打开选项卡的数组将非常有用 然后,仅当选项卡
id
(存储在锚的href
中)不在该数组中时,脚本才会继续执行Ajax请求
另外一个数据
属性在标记中很有用,因此通过单击
,您可以将其传递给数据库,以向数据库发出正确的请求。请参见HTML标记中的
数据id
console.clear();
//用于存储加载的选项卡的数组。
var tabsLoaded=[];
//选项卡单击处理程序
$(“[数据切换]”)。在(“单击”,函数(){
var href=$(this.attr(“href”);
//console.log(href);
var id=$(this.data(“id”);
//console.log(id);
//仅当该选项卡尚未加载时,才转至Ajax请求。
if(tabsLoaded.indexOf(href)=-1){
//将该选项卡id存储在数组中以防止无用的请求
tabsLoaded.push(href);
log(“这里是Ajax!”)
/*//Ajax在这个代码段中无法工作……但我建议使用这段代码。
//阿贾克斯!
$.ajax({
类型:“post”,
url:“getAccordion.php”,
data:{id:id},//传递从数据id获取的id
数据类型:“json”,
成功:功能(数据){
//将值传递给手风琴琴体
$(href).html(data.someProperty);
}
});
*/
//模拟Ajax响应
$(href).html(“您好!我是来自id“+id+”查询的Ajax响应”);
}否则{
//这只对演示有用…你可以删除它。
log(“不需要Ajax,内容已经加载了。”)
}
});
您希望从初始页面加载中“延迟”加载一些额外内容 您不会希望每次单击选项卡时都加载它!
因此,存储已打开选项卡的数组将非常有用 然后,仅当选项卡
id
(存储在锚的href
中)不在该数组中时,脚本才会继续执行Ajax请求
另外一个数据
属性在标记中很有用,因此通过单击
,您可以将其传递给数据库,以向数据库发出正确的请求。请参见HTML标记中的
数据id
console.clear();
//用于存储加载的选项卡的数组。
var tabsLoaded=[];
//选项卡单击处理程序
$(“[数据切换]”)。在(“单击”,函数(){
var href=$(this.attr(“href”);
//console.log(href);
var id=$(this.data(“id”);
//console.log(id);
//仅当该选项卡尚未加载时,才转至Ajax请求。
if(tabsLoaded.indexOf(href)=-1){
//将该选项卡id存储在数组中以防止无用的请求
tabsLoaded.push(href);
log(“这里是Ajax!”)
/*//Ajax在这个代码段中无法工作……但我建议使用这段代码。
//阿贾克斯!
$.ajax({
类型:“post”,
url:“getAccordion.php”,
data:{id:id},//传递从数据id获取的id
数据类型:“json”,
成功:功能(数据){
//将值传递给手风琴琴体
$(href).html(data.someProperty);
}
});
*/
//模拟Ajax响应
$(href).html(“您好!我是来自id“+id+”查询的Ajax响应”);
}否则{
//这只对演示有用…你可以删除它。
log(“不需要Ajax,内容已经加载了。”)
}
});
那只是HTML标记…你的代码在哪里?我编辑了我的代码,所以你想在单击打开的手风琴时调用Ajax函数?如果是,这就是你想发出的Ajax请求吗?要传递的任何数据?是的。也许我可以传递一个id作为指示符,我有10个手风琴,它们都是sql查询,但会使我的网站滞后。我需要通过一次查询一个来缩小它。那只是HTML标记…你的代码在哪里?我编辑了我的代码,所以你想在单击打开的手风琴时调用Ajax函数?如果是,这是你想要的Ajax请求吗?要传递的任何数据?是的。也许我可以传递一个id作为指示符,我有10个手风琴,它们都是sql查询,但它是疯狂的e我的网站滞后。我需要通过一次查询一个来最小化它。感谢您的回复,但它仍然不起作用:(@KilluaKunnichi什么错误