2014-01-13 95 views
1

我试图让ajax函数填充列表时阻止下拉菜单,然后在完成后解除阻塞。任何想法为什么它不工作?jQuery BlockUI不阻止<select>

<script src="/Common/jquery.blockUI.js"></script> 

      function handleMoreResults (responseObj) { 
       $("#dimensionId").html(responseObj.DimensionValueListItem.map(function(item) { 
        return $('<option>').text(item.dimensionValueDisplayName)[0]; 
       })); 
      } 

      function getMoreData() 
      { 
       jQuery.ajax({ 
        url: GetDimensionValues, 
        type: "GET", 
        dataType: "json", 
        beforeSend: function() { 
         $.blockUI(); 
        }, 
        success: function (data) { 
         object = data; 
         handleMoreResults (data); 
        }, 
        complete: function() { 
         $.unblockUI(); 
        } 
       }); 
      } 
+0

为我工作: http://jsfiddle.net/8GnXZ/ –

+0

你的HTML看起来像什么?你怎么调用'getMoreData()'? –

+0

在第一个下拉菜单的onchange函数中调用GetMoreData() – Xenyal

回答

1

试试这个

$('select').block({ 
       message: '<h1>Processing</h1>', 
       css: { border: '3px solid #a00' } 
      }); 

,并把块,并在全局AJAX方法

$(document).ajaxStart($.blockUI).ajaxStop($.unblockUI); 

更多信息解锁电话在这里看到的文档http://malsup.com/jquery/block/#element