在.getjson jquery调用期间禁用选择下拉列表并在完成后启用

时间:2010-01-10 15:16:35

标签: jquery drop-down-menu getjson

我有以下代码,我点击一个选择框后我得到了JSON。有时需要很长时间,用户在服务器端处理期间再次单击下拉列表。

无论如何在服务器端调用期间禁用下拉列表并在处理完成后重新启用它。

这是我的代码

 <script type="text/javascript">
        $(document).ready(function() {

            $('#userDropdown').change(function() {
                if (this.selectedIndex != 0) {
                    var URL = "/Users/GetUserJson/" + this.value;

                    $.getJSON(URL, function(data) {

                         var userID = data.UserId;
                         var userColor = data.UserColor;

                         . . . .

1 个答案:

答案 0 :(得分:0)

Nerdling建议你隐藏选择,但我宁愿禁用它,就像你自己说的那样:

$('#userDropdown').change(function() {
    // Assign the select in a variable
    var sel = $(this);
    if (this.selectedIndex != 0) {
        // Disable it
        sel.attr('disabled', 'disabled')
        var URL = "/Users/GetUserJson/" + this.value;

        $.getJSON(URL, function(data) {

            var userID = data.UserId;
            var userColor = data.UserColor;

            // Enable it
            sel.removeAttr('disabled');

            ...