2015-12-29 105 views
1

我有从UI获取dateStart和dateEnd的JQuery函数,然后将这些参数传递给控制器​​。这里的问题是控制器没有得到任何请求,也没有显示错误?任何人都可以解释为什么发生?控制器没有得到请求

JQuery的:

$("#btn_search").click($.proxy(function() { 

    var dateStart = document.getElementById('dataStart').value; 
    var dateEnd = document.getElementById('dateEnd').value; 

    KeyWord.getGroup(dateStart, dateEnd, 
    function (data) { 
     $("#view_table").ViewTable('option', 'data', data); 
      }, 
      function() { }, 
      function() { Metronic.unblockUI(); }); 

     })) 

var KeyWord = function() { 
var url_Log = "api/Log/Search"; 
return { 
    getGroup: function (dateStart, dateEnd, done, fail, always) { 
     var jqxhr = $.get(url_Log, { dateStart: dateStart, dateEnd: dateEnd }); 
     jqXhrHandler(jqxhr, done, fail, always); 
    } 
} 
}(); 

控制器:

[HttpGet] 
    public string Search(DateTime? dateStart, DateTime? dateEnd) 
    { 
     LogDalc dalc = new LogDalc(); 

     DateTime _sdate = dateStart == null ? DateTime.MinValue : (DateTime)dateStart; 
     DateTime _edate = dateEnd == null ? DateTime.MinValue : (DateTime)dateEnd; 

     return dalc.Sel(_sdate, _edate); 
    } 
+0

有您是否使用浏览器中的开发人员工具来检查请求? (即Chrome中的“Net”标签)。控制台中是否有错误? –

+0

这很可能是dateStart和dateEnd的值的问题。在你开火之前他们看起来像什么?你很可能会想要像这样使用jQuery的.ToJSON():'var dateStart = document.getElementById('dataStart')。value.ToJSON();' –

+0

我相信是dateStart和dateEnd不传递给控制器。 – Saif

回答