Ajax没有工作,控制台没有给出任何错误-MVC

时间:2015-04-06 09:08:01

标签: jquery asp.net-mvc asp.net-ajax

我正在创建页面。当用户在文本框中输入文本时,它会将字符串传递给操作名称“CheckRecord”,这是PartialViewResult  然后返回主视图“创建”。 创建视图:

<input type="text" id="enginNo" />
 <input type="button" value="search" id="btnSearch" />

<div id ="result"></div>

<script type="text/javascript">
    $(document).ready(function () {
        $("#btnSearch").click(function () {
            var enginNo = $('#enginNo').val();
            $.ajax({
                cashe :'false',
      type: 'Get',
      data: { enginNo: enginNo },
      url: '@Url.Action("CheckRecord")',
      dataType: 'HTML',  // add this line
      success: function (result) {
          $('#result').html(result);
      },
      error: function (jqXHR, exception) {
          if (jqXHR.status === 0) {
              alert('Not connect.\n Verify Network.');
          } else if (jqXHR.status == 404) {
              alert('Requested page not found. [404]');
          } else if (jqXHR.status == 500) {
              alert('Internal Server Error [500].');
          } else if (exception === 'parsererror') {
              alert('Requested JSON parse failed.');
          } else if (exception === 'timeout') {
              alert('Time out error.');
          } else if (exception === 'abort') {
              alert('Ajax request aborted.');
          } else {
              alert('Uncaught Error.\n' + jqXHR.responseText);
          }
      }
 });
        });
    });
</script>

创建操作:

public ActionResult Create()
    {
     return View();
    }

CheckResult操作:

   public PartialViewResult CheckRecord(string enginNo)
        {
            if(enginNo == null)
            { 
            var StockDM = db.StockDMs.Where(c => c.EngineNumber == "54-21-31-AF-31");
                return PartialView("_Part", StockDM.ToList());
            }
            else
            { 
                var StockDM = db.StockDMs.Where(c => c.EngineNumber == enginNo);
                return PartialView("_Part", StockDM.ToList());
            }
        }

部分视图“_Part”

@model IEnumerable<SM.CRM.AutosLoan.Models.Core.DomainModels.StockDM>

@foreach (var item in Model) {

            @Html.DisplayFor(modelItem => item.ChasisNumber)

}
  

问题是数据从数据库返回完全但没有从ajax控件上加载div ...而且控制台也没有给出   任何错误...可能是一些愚蠢的错误...请帮助,,,,谢谢你   时间

1 个答案:

答案 0 :(得分:2)

试试这个

$.ajax({
      cashe :'false',
      type: 'Get',
      data: { enginNo: enginNo },
      url: '@Url.Action("CheckRecord","ControllerName")',
      dataType: 'HTML',  // add this line
      success: function (result) {
          $('#result').html(result);
      },
      error: function (jqXHR, exception) {
           ............
      }
 });

'@Url.Action("CheckRecord")'

中添加控制器名称