Javascript 使用jQuery在AJAX请求期间显示忙加载指示器
我有状态激活/取消激活按钮,当用户点击激活状态时,它会变成红色的取消激活,反之亦然 目前我可以更新我的状态@后端,但每次我都应该刷新以查看我的更改 我的要求是在改变状态的主动/非主动过程中,我想加载ajax图像加载器,加载器图像应该覆盖整个屏幕。我的状态应该在mysql数据库中更新 请给予任何帮助,谢谢 Php代码Javascript 使用jQuery在AJAX请求期间显示忙加载指示器,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有状态激活/取消激活按钮,当用户点击激活状态时,它会变成红色的取消激活,反之亦然 目前我可以更新我的状态@后端,但每次我都应该刷新以查看我的更改 我的要求是在改变状态的主动/非主动过程中,我想加载ajax图像加载器,加载器图像应该覆盖整个屏幕。我的状态应该在mysql数据库中更新 请给予任何帮助,谢谢 Php代码 <?php include 'db.php'; $sql = "select * from sections order by id asc"; $d
<?php
include 'db.php';
$sql = "select * from sections order by id asc";
$data = $con->query($sql);
$str='';
if($data->num_rows>0)
{
while( $row = $data->fetch_array(MYSQLI_ASSOC))
{
$str.="
"?>
<div class="row">
<div class="col-md-1">
<?php
if ($row['status'] == '1')
{
?>
<a href="#" class="btn btn-success btn-sm active" ida='<?php echo $row['id'];?>'></a>
<?php }
else if($row['status'] == '0')
{
?>
<a href="#" class="btn btn-danger btn-sm deactive" idde='<?php echo $row['id'];?>'></a>
<?php } ?>
</div>
</div>
<?php
}
}
else
{
$str .= "<p style='text-align:left;'>No Data Available</p>";
}
echo $str;
?>
尝试使用$.ajax()
尝试使用$.ajax()
尝试使用$.ajax()
尝试使用$.ajax()
尝试此脚本并进行所述更改:
变化:
对于这两个操作,保持与数据id
相同的属性
loaderElem
将是应该存在于DOM中的加载程序容器
BODY
只是一个BODY选择器
,只是为了避免多余的选择器
var-elem=$(此项)代码>在成功回调后用作我需要的此
引用
还要养成使用错误回调的习惯,因为您可能需要处理这种情况
var BODY=$('BODY');
var loaderElem=$(“#loader”);
主体.delegate('.active',click',函数(e){
loaderElem.show();
var IdStatus=0;
var elem=$(本);
变量id=元素属性(“数据id”);
$.ajax({
url:“pages/status1.php”,
数据:{
状态:IdStatus,
id:id
},
数据类型:“html”,
成功:函数(){
元素removeClass('active').addClass('deactive');
loaderElem.hide();
警惕(“成功”);
}
});
e、 预防默认值();
返回false;
});
主体.delegate('.deactive',click',函数(e){
loaderElem.show();
var-IdStatus=1;
var elem=$(本);
变量id=元素属性(“数据id”);
$.ajax({
url:“pages/status1.php”,
数据:{
状态:IdStatus,
id:id
},
数据类型:“html”,
成功:函数(){
元素removeClass('deactive').addClass('active');
loaderElem.hide();
警惕(“成功”);
}
});
e、 预防默认值();
返回false;
});
尝试此脚本并进行所述更改:
变化:
对于这两个操作,保持与数据id
相同的属性
loaderElem
将是应该存在于DOM中的加载程序容器
BODY
只是一个BODY选择器
,只是为了避免多余的选择器
var-elem=$(此项)代码>在成功回调后用作我需要的此
引用
还要养成使用错误回调的习惯,因为您可能需要处理这种情况
var BODY=$('BODY');
var loaderElem=$(“#loader”);
主体.delegate('.active',click',函数(e){
loaderElem.show();
var IdStatus=0;
var elem=$(本);
变量id=元素属性(“数据id”);
$.ajax({
url:“pages/status1.php”,
数据:{
状态:IdStatus,
id:id
},
数据类型:“html”,
成功:函数(){
元素removeClass('active').addClass('deactive');
loaderElem.hide();
警惕(“成功”);
}
});
e、 预防默认值();
返回false;
});
主体.delegate('.deactive',click',函数(e){
loaderElem.show();
var-IdStatus=1;
var elem=$(本);
变量id=元素属性(“数据id”);
$.ajax({
url:“pages/status1.php”,
数据:{
状态:IdStatus,
id:id
},
数据类型:“html”,
成功:函数(){
元素removeClass('deactive').addClass('active');
loaderElem.hide();
警惕(“成功”);
}
});
e、 预防默认值();
返回false;
});
尝试此脚本并进行所述更改:
变化:
对于这两个操作,保持与数据id
相同的属性
loaderElem
将是应该存在于DOM中的加载程序容器
BODY
只是一个BODY选择器
,只是为了避免多余的选择器
var-elem=$(此项)代码>在成功回调后用作我需要的此
引用
还要养成使用错误回调的习惯,因为您可能需要处理这种情况
var BODY=$('BODY');
var loaderElem=$(“#loader”);
主体.delegate('.active',click',函数(e){
loaderElem.show();
var IdStatus=0;
var elem=$(本);
变量id=元素属性(“数据id”);
$.ajax({
url:“pages/status1.php”,
数据:{
状态:IdStatus,
id:id
},
数据类型:“html”,
成功:函数(){
元素removeClass('active').addClass('deactive');
loaderElem.hide();
警惕(“成功”);
}
});
e、 预防默认值();
返回false;
});
主体.delegate('.deactive',click',函数(e){
loaderElem.show();
var-IdStatus=1;
var elem=$(本);
变量id=元素属性(“数据id”);
$.ajax({
url:“pages/status1.php”,
数据:{
状态:IdStatus,
id:id
},
数据类型:“html”,
成功:函数(){
元素removeClass('deactive').addClass('active');
loaderElem.hide();
警惕(“成功”);
}
});
e、 预防默认值();
返回false;
});
尝试此脚本并进行所述更改:
变化:
对于这两个操作,保持与数据id
相同的属性
loaderElem
将是应该存在于DOM中的加载程序容器
BODY
只是一个BODY选择器
,只是为了避免多余的选择器
var-elem=$(此项)代码>在成功回调后用作我需要的此
引用
还应养成使用错误回调的习惯,因为您可能需要处理错误回调
<script type="text/javascript">
$('body').delegate('.active','click',function(e){
var IdStatus = 0;
var id = $(this).attr('ida');
$.ajax({
url:"pages/status1.php",
data:{
status:IdStatus,
id:id
},
dataType:'html',
success:function()
{
alert('success');
}
});
e.preventDefault();
return false;
});
$('body').delegate('.deactive','click',function(e){
var IdStatus = 1;
var id = $(this).attr('idde');
$.ajax({
url:"pages/status1.php",
data:{
status:IdStatus,
id:id
},
dataType:'html',
success:function()
{
alert('success');
}
});
e.preventDefault();
return false;
});
</script>
<?php
if(isset($_REQUEST['status']))
{
$status = $_REQUEST['status'];
$id = $_REQUEST['id'];
$sql = 'update sections set status='.$status.' where id='.$id.'';
$result = mysql_query($sql);
if($result)
{
echo 'updated successfully';
}
else
{
echo 'failed to update';
}
}
?>
$('body').delegate('.active','click',function(e){
var IdStatus = 0;
var id = $(this).attr('ida');
$.ajax({
url:"pages/status1.php",
beforeSend: function() {
// do overlay stuff
},
data:{
status:IdStatus,
id:id
},
dataType:'html',
success:function()
{
// remove overlay stuff
alert('success');
}
});
e.preventDefault();
return false;
});