Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在输入jquery中删除值时清除所有更改_Javascript_Jquery_Html_Ajax - Fatal编程技术网

Javascript 在输入jquery中删除值时清除所有更改

Javascript 在输入jquery中删除值时清除所有更改,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我的Javascript有问题 当您删除或更改字段的值时 jquery效果仍然存在 当我从输入中删除值时,是否有方法清除所有更改 这就是一个例子 在第二种情况下尝试第六种 $(document).ready(function() { $('#submit').click(function(e) { e.preventDefault(); var pram = $('#getId').val()

我的Javascript有问题 当您删除或更改字段的值时 jquery效果仍然存在 当我从输入中删除值时,是否有方法清除所有更改

这就是一个例子 在第二种情况下尝试第六种

    $(document).ready(function() {
            $('#submit').click(function(e) {
            e.preventDefault();
           var pram = $('#getId').val()
            $.ajax({
                type: 'POST',
                url: 'call.php?q='+pram,
                success: function(data){

                    for(var i = 0 ; i < data ; i++){
                        var $steps = $('.amg-step');
                        if (i > 0) { $($steps[i - 1]).removeClass('--previous'); }
                        $($steps[i]).removeClass('--active').addClass('--complete').addClass('--previous');
                        if (i < $steps.length) { $($steps[i + 1]).addClass('--active'); }
                    }
                }
            });
        });
});
$(文档).ready(函数(){
$(“#提交”)。单击(函数(e){
e、 预防默认值();
var pram=$('#getId').val()
$.ajax({
键入:“POST”,
url:'call.php?q='+pram,
成功:功能(数据){
对于(变量i=0;i0){$($steps[i-1]).removeClass('--previous');}
$($steps[i]).removeClass('--active').addClass('--complete').addClass('--previous');
if(i<$steps.length){$($steps[i+1]).addClass('--active');}
}
}
});
});
});

您需要重置以前添加的所有类:

var $steps = $('.amg-step').removeClass('--previous').removeClass('--complete').removeClass('--active');
或者是ajax
success
函数的简化版本:

var $steps = $('.amg-step').removeClass('--previous --complete --active');
for(var i = 0 ; i < data ; i++){
    if (i > 0) { 
        $($steps[i - 1]).removeClass('--previous'); 
    }
    $($steps[i]).removeClass('--active').addClass('--complete').addClass('--previous');
    if (i < $steps.length) { $($steps[i + 1]).addClass('--active'); }
}
var$steps=$('.amg step').removeClass('--previous--complete--active');
对于(变量i=0;i0){
$($steps[i-1]).removeClass('--previous');
}
$($steps[i]).removeClass('--active').addClass('--complete').addClass('--previous');
if(i<$steps.length){$($steps[i+1]).addClass('--active');}
}

当输入为空时,需要清除所有类,然后只激活第一个类。使用下面的代码

$('.amg-step').removeClass('--previous --complete --active'); //to clear all

$('.amg-step:eq(0)').addClass('--active'); // make first one active

将此代码放在ajax调用的正上方

您可以设置全新的类属性

$('.amg-step').attr('class', 'amg-step');

当元素可能有除所有
--
前缀类之外的其他类时,这可能无法正常工作-当我添加此代码时,它也将删除这些类,只留下
amg步骤
(但对于此特定场景是可以的)。。当我从输入中删除值时,我需要它。将它添加到您的
var pram=$(“#getId').val()
行。@haitham如果我或Alon Eitan的答案解决了您的问题,那么我建议您将它们中的任何一个标记为答案,如果答案只是第一行代码,那么请按照他最初的建议标记Alon Eitan的答案。