2016-08-25 84 views
0

我正在使用表单将一些值发布到控制器。发布日期时间值

这里是js代码;

$.ajax({ 
     type: "POST", 
     url: "GetReports", 
     data: { 
      MacId: $("#select-definition").val(), 
      StartDate: $("#input-start-date").val(), 
      EndDate: $("#input-end-date").val(), 
     }, 
     dataType: "JSON" 
    }) 
    .done(function (result) { 
     console.log(result); 
    }) 
    .fail(function() { 

    }) 
    .always(function (result) { 
     console.log(result); 
    }); 
    }); 

这里是HTML;

<form id="form-reports" action="" > 
    <div class="col-lg-3"> 
     <select class="selectpicker" name="MacId" id="select-definition" required></select> 
    </div> 
    <div class='col-sm-3'> 
     <div class="form-group"> 
      <div class='input-group date'> 
       <input type='datetime' id='input-start-date' name="StartDate" class="form-control" /> 
       <span class="input-group-addon"> 
        <span class="glyphicon glyphicon-calendar"></span> 
       </span> 
      </div> 
     </div> 
    </div> 
    <div class='col-sm-3'> 
     <div class="form-group"> 
      <div class='input-group date'> 
       <input type='datetime' id='input-end-date' name="EndDate" class="form-control" /> 
       <span class="input-group-addon"> 
        <span class="glyphicon glyphicon-calendar"></span> 
       </span> 
      </div> 
     </div> 
    </div> 
    <div class="col-lg-2"> 
     <button class="form-control" type="button" id="button-submit">Done</button> 
    </div> 
</form> 

这里是控制器(我张贴表格);

[HttpPost] 
public string GetReports(string MacId, DateTime StartDate, DateTime EndDate) 

是错误的;

POST http://localhost:55616/Home/GetReports 500(内部服务器错误)

我无法找出错误和解决方案,

我想输入的值传递给控制器​​

请注意,我使用MVC C#Web应用程序。

在此先感谢

回答

0

500表示发生服务器错误。在控制器操作上放置一个断点并逐步完成。这可能是控制器操作中的代码错误。如果参数不正确,那么MVC引擎将不会找到该操作,并返回401.您获得500的事实意味着它正在查找端点,它只是在代码中抛出异常。