Я следую этому руководству https://www.youtube.com/watch?v=c_MELPfxJug относительно ajax и JsonResult в HomeController
Я сделал учебник, однако по какой-то причине контроллер возвращает Html, а не json
Я не изменил ни одной строки кода, но он не работает с parseError на стороне javascript.
когда я смотрю на ответ, я вижу html-страницу, а не объект json.
Код контроллера:
public JsonResult DoubleValue(int? Value)
{
if (!Request.IsAjaxRequest() || !Value.HasValue)
{ return null; }
else
{
int DoubleValue = Value.Value * 2;
var ret = new JsonResult
{
Data =
new { DoubleValue = DoubleValue }
};
return ret;
}
}
cshtml:
@using (Html.BeginForm())
{
@Html.TextBox("txtAmount",0)
<button id="btnDoubleValue">DoubleIT</button>
<div id="lblMessage"></div>
}
@section Scripts{
<script type="text/javascript">
$(function () {
$('#btnDoubleValue').on('click', function() {
$.ajax({
type: 'POST',
url: '@Html.Action("DoubleValue")',
data: { 'Value': $('#txtAmount').val() },
datatype: 'json',
cache: 'false'
}).success(function (data) {
var t = data;
$('#txtAmount').val(data.DoubleValue);
}).error(function (x, o, e) {
$('#lblMessage').html('error was found: ' );
});
return false;
})
});
</script>
}
return Json(new{ DoubleValue = doubleValue});
вместоnew
JsonResult
- person DLeh   schedule 07.07.2015Json()
создает новый объектJsonResult
. - person teo van kot   schedule 07.07.2015