ASP Core模型绑定适用于从浏览器发送的表单数据。如果添加的元素是通过AJAX请求发送的,则必须使用AJAX来处理表单数据。
将表单数据转换为JSON格式并在AJAX请求中发送。
后端控制器必须以JSON格式读取请求体。因此,使用[FromBody]属性将请求转换为模型对象。
以下示例演示了如何在ASP Core中使用AJAX表单绑定功能:
前端代码:
AJAX请求:
$('#myForm').submit(function(e) {
var formData = $(this).serialize();
$.ajax({
url: '/myController/myAction',
type: 'post',
data: formData,
success: function(response) {
alert(response);
}
});
e.preventDefault();
});
后端代码:
[HttpPost]
public IActionResult myAction([FromBody] MyModel myModel)
{
// Do something with myModel
return Ok("Success!");
}
注意:如果添加的元素不是表单数据,而是简单的输入字段,那么可以使用GET请求将数据作为查询字符串发送。然后从查询字符串中读取数据。