[英]GET Method in ASP.Net MVC is not getting called on button click from Javascript
我是ASP.Net MVC的新手。 我有一个按钮,然后单击该按钮,我需要返回一个JSON对象。 单击按钮应进行ajax调用以调用get方法。 我的get方法根本没有被调用,而是我的index方法正在被调用。
控制器:
public ActionResult PageLoad()
{
return View("PackBOMQuotePreferred");
}
[HttpGet]
public ActionResult RetreivePackData()
{
IEnumerable<MPMPackInfo> oListOfPacks = null;
try
{
oListOfPacks = _service.GetListOfPacks();
}
catch (Exception ex)
{
_errorLog.Error(ex);
}
return Json(oListOfPacks, JsonRequestBehavior.AllowGet);
}
.cshtml
@{
ViewBag.Title = "PackBOMQuotePreferred";
}
<h2>PackBOMQuotePreferred</h2>
<!DOCTYPE html>
<meta name="viewport" content="width=device-width" />
<script src="~/Scripts/jquery-1.9.1.min.js" type="text/javascript"></script>
<div id="errorMsgBoard" class="error">
</div>
<div>
<input type="button" class ="btn btn-primary start" id ="btnRetreivePackData" value="Retreive Pack Data" />
<input type="button" class ="btn btn-primary start" id ="btnRetreiveBOMData" value="Retrieve BOM Data" />
<input type="button" class ="btn btn-primary start" id ="btnRetreiveQUoteData" value="Retrieve Quote Data" />
<input type="button" class ="btn btn-primary start" id ="btnRetreivePreferredData" value="Retrieve Preferred Data" />
</div>
<script type="text/javascript" lang="javascript">
$("#btnRetreivePackData").on("click", function ()
{
$.ajax({
type: 'get',
Url: 'PackBOMQuotePreferred/RetreivePackData',
datType:'json',
cache: false,
data: {},
contentType: 'application/json; charset=utf-8',
Success: function (response, textStatus, jqXHR) {
alert(response);
},
error: function (jqXHR, textStatus, errorThrown) {
alert('Error - ' + errorThrown);
}
});
});
</script>
如果我看提琴手,它会显示GET / PackBOMQuotePreferred / PageLoad?_ = 1412451506195 HTTP / 1.1,这意味着不会调用RetreivePackData。 我没有在Chrome控制台中看到任何错误。
不知道我在做什么错。
编辑您的URL。 它应该是
Url: '/PackBOMQuotePreferred/RetreivePackData/',
而且您也将datatype
拼写为dattype
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.