【发布时间】: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