javascript - 所有ajax调用完成后如何刷新页面?

标签 javascript jquery ajax

下面是我的 jquery 函数。我需要刷新页面,以便在检查要显示的列后可以显示其他列。目前,使用代码 (location.reload()),它会在 ajax 调用完成之前刷新。我在复选框循环后尝试了 .promise,但它只允许我提交 1 个复选框。

Jquery

$('.delete-numbers').click(function () {
        $('.number-chkbox').each(function () {   
            if (this.checked) {
                $(this).attr('checked', true);
                alert($(this).val() + " " + this.checked + "I GOT INNNN ADDDDD");
                $.ajax({
                    url: '/PhoneBook/AddNumber',
                    data: {
                        Number: $(this).val(),
                        Name: name,
                        PhoneId: PhoneId
                    },
                    type: "POST",
                    dataType: "html",
                    cache: false
                });
            } else {
                $(this).removeAttr('checked');
                alert($(this).val() + " " + this.checked + "I GOT INNNN REMOVE");
                $.ajax({
                    url: '/PhoneBook/AddNumber',
                    data: {
                        Number: $(this).val(),
                        Name: name,
                        PhoneId: PhoneId
                    },
                    type: "POST",
                    dataType: "html",
                    cache: false
                });
            }
        })
        location.reload();
    });

HTML

<div class="modal-body form-group">
                @foreach (var item in Model.PhoneBook.OrderBy(a => a.Number))
                {
                    if (Model.AvailableNumbers.Any())
                    {
                        if (Model.AvailableNumbers.Where(a => a.Number== item.Number).Count() != 0)
                        {
                            <input class="number-chkbox number" type="checkbox" checked="checked" name="@item.Number_Description" value="@item.Number">
                        }
                        else
                        {
                            <input class="number-chkbox number" type="checkbox" name="@item.Number_Description" value="@item.Number">
                        }
                        <label class="non-bold">@String.Format(" {0} - {1}", @item.Number, @item.Number_Description)</label>
                        <br />
                    }
                    else
                    {
                        <input class="number-chkbox number" type="checkbox" name="@item.Number_Description" value="@item.Number">
                        <label class="non-bold">@String.Format(" {0} - {1}", @item.Number, @item.Number_Description)</label>
                        <br />
                    }
                }
            </div>
<div class="modal-footer">
                    <button type="submit" class="btn btn-danger delete-numbers" data-dismiss="modal">Yes</button>
                    <button type="button" class="btn btn-default cancel-number">No</button>
                </div>

最佳答案

$.ajax({
  ...,
  ...,
  success: function() {location.reload();}
})

JQuery AJAX

关于javascript - 所有ajax调用完成后如何刷新页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38363873/

相关文章:

javascript - JSON.stringify 没有序列化对象

javascript - jquery 重定向点击或 10 秒后

javascript - IE 对象不支持此属性或方法

javascript - 为什么我没有得到对 Comet 服务器流事件的实时响应?

javascript - 关于重定向的 Google 脚本无法正常工作并出现特殊错误,发生了什么

javascript - 通过 .splice() 删除最后一个数组,如 [ ["1"]] ,为什么输出 = [[]] 而不是 []?

javascript - 如何按城市(位置)Google map 过滤位置数组

javascript - 需要有关 div 中内容自动滚动的帮助

javascript - 使用ajax加载onsen-ui内容

调用时 Javascript 代码不可用