【问题标题】:Ajax not working and console not giving any error-MVCAjax 不工作并且控制台不给出任何错误-MVC
【发布时间】:2015-04-06 09:08:01
【问题描述】:

我正在创建页面。当用户在文本框中输入文本时,它会将字符串传递给操作名称“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();
    }

检查结果操作:

   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 上......而且控制台也没有给出 任何错误...可能是一些愚蠢的错误...请帮助,,,,谢谢你 时间

【问题讨论】:

  • 在你的ajax请求中添加错误回调,看看是什么错误。
  • '@Url.Action("CheckRecord")'中的控制器名称在哪里
  • 不是cashe:false,是Cache:false。
  • 数据:{'enginNo':enginNo },
  • @Manoj.yes 您可以将其发布为答案,,,,,

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


【解决方案1】:

试试这个

$.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")'中添加控制器名称

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-08
    • 1970-01-01
    • 2014-11-14
    • 1970-01-01
    • 1970-01-01
    • 2015-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多