2017-10-14 139 views
0

檢查AJAX調用波紋管。問題是AJAX後沒有發送數據到我的方法「/ CategoryResearch /搜索」。根據我的支票,我沒有看到任何錯誤。jQuery AJAX調用不起作用

如果您發現任何問題,請讓我知道。

在此先感謝

<script>  
    $(document).ready(function() { 
    var _OperationName = ""; 
    var _calltype = ""; 
    var _page = ""; 
    var _keywords = ""; 
    var _type = ""; 
    var _location = ""; 
    var _condition = ""; 
    var _min = ""; 
    var _max = ""; 
    var _negative = ""; 
    var _minFeedback = ""; 
    var _maxFeedback = ""; 
    var _drange = ""; 
    var _categoryId = ""; 

    $(".SearchMainCategory, .SearchSubCategory").click(function() { 
     _categoryId = $(this).find("#SearchLevel1CatId").val(); 
     if (typeof _categoryId === "undefined") { 
     _categoryId = $(this).find("#SearchLevel2CatId").val(); 
     } 

     _OperationName = "findItemsByCategory"; 
     _calltype = "categoryClick"; 
     _page = 1; 

     $.post("/CategoryResearch/Search", 
     { 
      OperationName: _OperationName, 
      calltype: _calltype, 
      page: _page, 
      keywords: _keywords, 
      type: _type, 
      location: _location, 
      condition: _condition, 
      min: _min, 
      max: _max, 
      negative: _negative, 
      minFeedback: _minFeedback, 
      maxFeedback: _maxFeedback, 
      drange: _drange, 
      categoryId: _categoryId 
     }, 
     StartLoading()) 
     .done(function (data) {});  
    }); 
    }); 
</script> 
+0

打開瀏覽器控制檯,並嘗試跟蹤在網絡選項卡 –

+0

https://ibb.co/imy1Dw請求看到這個錯誤上來就控制檯 –

+0

嘗試檢查您的瀏覽器控制檯,而運行你的代碼片段。它會告訴你錯誤(如果有的話) –

回答

2

從您的意見,我發現你調用一個未定義的函數「StartLoading()」所以我刪除,現在它的工作原理。

<script> 

    $(document).ready(function() { 
     var _operationname = ""; 
     var _calltype = ""; 
     var _page = ""; 
     var _keywords = ""; 
     var _type = ""; 
     var _location = ""; 
     var _condition = ""; 
     var _min = ""; 
     var _max = ""; 
     var _negative = ""; 
     var _minFeedback = ""; 
     var _maxFeedback = ""; 
     var _drange = ""; 
     var _categoryId = ""; 

     $(".SearchMainCategory, .SearchSubCategory").click(function() { 
      _categoryId = $(this).find("#SearchLevel1CatId").val(); 
      if (typeof _categoryId === "undefined") { 
       _categoryId = $(this).find("#SearchLevel2CatId").val(); 
      } 

      _operationname = "findItemsByCategory"; 
      _calltype = "categoryClick"; 
      _page = 1; 

      $.post("/CategoryResearch/Search", { OperationName: _operationname, calltype: _calltype, page: _page, keywords: _keywords, type: _type, location: _location, condition: _condition, min: _min, max: _max, negative: _negative, minFeedback: _minFeedback, maxFeedback: _maxFeedback, drange: _drange, categoryId: _categoryId }) 
       .done(function (data) { 




       }); 


     }); 



    }); 
</script> 
0

從控制檯的錯誤顯示您沒有定義回調函數啓動加載。

可以代替 'startloading' 的創建一個空的匿名函數

function(){} 

測試。如果它起作用,那麼你可以用預期的實現來替換你打算加載的空函數。

0

從屏幕截圖看來StartLoading方法是未定義的。

您的$.post中的第三個參數需要function。看來您正在執行功能StartLoading,而不是作爲函數參考傳遞它。

  1. 檢查StartLoading是否定義。
  2. 通過StartLoading作爲參考像StartLoading沒有()
+0

是的,你是正確的。 –