-1

我有更新的進度條,它適用於OnClick事件(服務器端),但我需要OnClientClick事件(客戶端)的更新進度欄。updatepanel進度條onclientclick事件

你能解釋一下,或者建議我做嗎?

我已經嘗試了下面的解決方案,但它不適合我。

JS:

function ComparableSearch() { 
    $get('UpdateProgress1').style.display = 'block';  
    window.scrollTo(0, 0); 

    GetRefineSearchDetailsMap(StreetNo[0], StreetNo[1], StreetName, State, County, ZipCodeFrom, ZipCodeTo, SalePriceFrom, 
           SalePriceTo, LivingArea, LivingAreaTo, SaleDateFrom, SaleDateTo, SubjectPropertyId, Section, Subdivision, 
           LotSizeFrom, LotSizeTo, YearBuiltFrom, YearBuiltTo, Stories, PrivatePool, FirePlace, Disclosure, IsListing, 
           City, Design, FirePlaceTo); 

    $("#map").show(); 
    $("#MainSearchResult").hide(); 
    return false; 
    $get('UpdateProgress1').style.display = 'none'; 

} 



function GetRefineSearchDetailsMap(aStreetNoFrom, aStreetNoTo, aStreetName, aState, aCounty, aZipCodeFrom, aZipCodeTo, aSalePriceFrom, 
            aSalePriceTo, aLivingArea, aLivingAreaTo, aSaleDateFrom, aSaleDateTo, aSubjectPropertyId, aSection, aSubdivision, aLotSizeFrom, 
            aLotSizeTo, aYearBuiltFrom, aYearBuiltTo, aStories, aPrivatePool, aFirePlace, aDisclosure, aIsListing, aCity, aDesign, aFirePlaceTo) { 


    var SalesSearchCriteria = {   
     X1: X1, 
     X2: X2, 
     Y1: Y1, 
     Y2: Y 
    }; 
    request = $.ajax({ 
     url: "Form1004/SaleComparableHandler.ashx?type=GetRefineSearchDetailsMap&Tid=" + Math.random(), 
     type: "POST", 
     data: { "SearchCriteria": JSON.stringify(SalesSearchCriteria) }, 
     async: true, 
     success: function (data) { 
      if (data.length > 0) { 
       if (data != "Error") { 

       } 
       else {      
        alert("Your session has been expired"); 
       } 
      } 
      else {    
       alert("No data exists"); 
      } 
     }, 
     error: function (XMLHttpRequest, status, errorThrown) { 
      if (errorThrown != 'abort') { 
       PopUpAlertBox("Please try again...<br/><br/>Below error occured <br/><br/> " + errorThrown + ""); 
      } 
      else { 
       PopUpAlertBox("Error : " + errorThrown + ""); 
      }   
     } 
    }); 

    return false; 
} 

回答

0

如果我沒有記錯的話,阿賈克斯是你所需要的。

我應該在客戶端創建腳本,將數據傳遞給服務器(當事件點擊爲true時),服務器的結果就是您的進度條的數據。

小例子here

+0

不..這裏我沒有代碼在服務器端。我的功能只能通過客戶端工作 – 2015-03-02 12:23:17

+0

我很抱歉我的答案。 – netwer 2015-03-02 12:24:15

0

您可以用它來顯示一個UpdateProgress器上的JavaScript

$get('UpdateProgress1').style.display = 'block'; 

類似的事情來隱藏它

$get('UpdateProgress1').style.display = 'none'; 

編輯

// display indicator before ajax starts 
$get('UpdateProgress1').style.display = 'none'; 

$.ajax({ 
    url: "Form1004/SaleComparableHandler.ashx?type=GetRefineSearchDetailsMap&Tid=" + Math.random(), 
    type: "POST", 
    data: { "SearchCriteria": JSON.stringify(SalesSearchCriteria) }, 
    success: function (data) { 
     // your code 
    }, 
    error: function (XMLHttpRequest, status, errorThrown) { 
     // your code 
    } 
}) 
.always(function() { 
    // hide ajax indicator when ajax finished (success or error) 
    $get('UpdateProgress1').style.display = 'none'; 
}); 
+0

這不起作用 – 2015-03-03 03:49:56

+0

@VigneshKumar:什麼也不做,或者你得到一個錯誤? '$'符號可能會導致jQuery衝突 – 2015-03-03 11:59:51

+0

沒有錯誤。但什麼也沒有做。如果衝突問題意味着我該怎麼做? – 2015-03-04 04:08:58