在ASP .NET MVC 4中,我尝试更新页面上的列表而不执行实际的表单提交,也没有刷新页面。
点击按钮后,我想在方法CheckPartNumber中调用列表数据,但是从不会遇到断点。没有错误被抛出。我可以打一个调试器;在JavaScript中但没有找到错误。
<script type="text/javascript">
function getParts(searchString) {
debugger;
$.ajax({
url: '@Url.Action("CheckPartNumber", "PartController")',
type: 'GET',
dataType: 'json',
// we set cache: false because GET requests are often cached by browsers
// IE is particularly aggressive in that respect
cache: false,
data: { searchString: searchString },
success: function (part) {
$('#PartNumber').val(part.PartNumber);
//$('#LastName').val(person.LastName);
}
});
}
</script>
<div class="editor-field">
<input type="text" id="part" />
<input type="button" value="Search" onclick="getParts('test')" />
</div>
public class PartController : Controller
{
private InventurWebEntities db = new InventurWebEntities();
[HttpGet]
public ActionResult CheckPartNumber(string searchString)
{
var parts = db.Parts.Take(10);
return Json(parts, JsonRequestBehavior.AllowGet);
}
}
答案 0 :(得分:3)
您正在构建错误的网址。使用Url.Action
时,您需要删除Controller
后缀。所以这个:
@Url.Action("CheckPartNumber", "PartController")
成为这个:
@Url.Action("CheckPartNumber", "Part")