什么会导致jQuery游标保留在'指针'并且拒绝改变等待'?

时间:2016-09-15 16:27:42

标签: jquery

我有这个jQuery工作正常:

$(document).ready(function () {
    $("body").on( "click", "#btnGetData", function() {
        var _begdate = $("#datepickerFrom").val();
        var _enddate = $("#datepickerTo").val();
        var _unit = $("#unitName").text();
        document.body.style.cursor = 'wait';

        $.ajax({
            type: 'GET',
            url: '@Url.RouteUrl(routeName: "QuadrantData", routeValues: new { httpRoute = true, unit = "un", begdate = "bd", enddate = "ed" })'
                      .replace("un", encodeURIComponent(_unit))
                      .replace("bd", encodeURIComponent(_begdate))
                      .replace("ed", encodeURIComponent(_enddate)),
            contentType: 'text/plain',
            cache: false,
            xhrFields: {
                withCredentials: false
            },
            success: function (returneddata) {
                $("body").html(returneddata);
                document.body.style.cursor = 'pointer';
            },
            error: function () {
                console.log('error in ajax call to QuadrantData');
                document.body.style.cursor = 'pointer';
            }
        });
    });
});

...除了一件事:将光标更改为"漩涡" (旋转蓝色donutesque圈):

document.body.style.cursor = 'wait';

......只在第一次工作。也就是说,第一次单击 btnGetData 时,光标会正确地从指针变形'#39;等待&#39 ;;后续点击该按钮可执行基本功能,但无需更改光标。

为什么,更重要的是,我怎样才能让浏览器不仅仅是第一次响应光标变化?

1 个答案:

答案 0 :(得分:-1)

我不知道为什么,但是通过完全删除代码以将光标恢复为其指针'后续点击的状态很好 - 等待'在检索数据时显示光标,然后返回指针'一旦数据被放置在页面上,就表明状态。

首先是jQuery:

success: function (returneddata) {
    $("body").html(returneddata);
    document.body.style.cursor = 'pointer';
},
error: function () {
    console.log('error in ajax call to QuadrantData');
    document.body.style.cursor = 'pointer';
}

...我在运行一次后将其更改为:

success: function (returneddata) {
    $("body").html(returneddata);
},
error: function () {
    console.log('error in ajax call to QuadrantData');
}

......它只是花花公子。