javascript - 在 ASP.NET CORE MVC 项目中将 Javascript 值转换为 JSON
问题描述
我尝试了很多不同的解决方案,但我不明白为什么我的程序不起作用。我只想在我的控制器中取值 Javascript。
我的控制器
public JsonResult TestFunction (string FName)
{
return Json(new
{
result = "Ok"
});
}
视图中的 Javascript
@section scripts{
<script type="text/javascript" >
$(document).ready( function() {
$("#btnClick").click(function () {
var f = {};
f.data = JSON.stringify({FName: "FRANK" });
f.type = "POST";
f.contentType = "application/json; charset=utf-8";
f.url = '@Url.Action("TestFunction", "Home")';
f.success = function (data) {
alert(f.data);
};
f.error = function (response) {
alert("failed");
};
console.log(f.data);
$.ajax(f);
});
});
</script>
}
和或完成 Html
我不明白我的错误在哪里。谢谢。
解决方案
对于application/json
as contentType
,请尝试以下步骤:
定义视图模型
public class ViewModel { public string FName { get; set; } }
控制器动作
[HttpPost] public JsonResult TestFunctionViewModel([FromBody]ViewModel vm) { return Json(new { result = "Ok" }); }
要求
var f = {}; f.data = JSON.stringify({FName: "FRANK" }); f.type = "POST"; f.contentType = "application/json; charset=utf-8"; f.url = '@Url.Action("TestFunctionViewModel", "Home")'; f.success = function (data) { alert(f.data); }; f.error = function (response) { alert("failed"); }; console.log(f.data); $.ajax(f);
编辑
如果您需要string FName
参数,请尝试以下步骤:
添加
[FromBody]
[HttpPost] public JsonResult TestFunction([FromBody]string FName) { return Json(new { result = "Ok" }); }
要求
var f = {}; f.data = '"FNameTet"'; f.dataType = "json", f.type = "POST"; f.contentType = "application/json; charset=utf-8"; f.url = '@Url.Action("TestFunction", "Home")'; f.success = function (data) { alert(f.data); }; f.error = function (response) { alert("failed"); }; console.log(f.data); $.ajax(f);
注意
'"FNameTet"'
推荐阅读
- javascript - 将“活动”类设置为当前滑块元素
- c# - 如何发送Linux中断信号?C#
- javascript - 无法替换 html 文本字段
- naming-conventions - 在蛇案例中处理数字的正确方法是什么?
- c# - 如何将 { opencv c++ } 代码集成到使用 c# 以统一 3D 开发的移动应用程序中
- php - 网址中的连字符时清除网址不起作用
- postgresql - 推迟物化视图的创建
- c# - 具有一种属性类型不同的相同类
- javascript - Extjs:由于 Ext.grid.column.Widget 导致网格崩溃
- postgresql - 在postgresql中对jsonb进行排序