ASP.NET Core 7 Razor Pages中,可以使用Ajax技术实现表单局部保存和加载。
首先,在Razor Page的HTML代码中,添加对jQuery和unobtrusive-ajax.js的引用。然后,在表单中添加一个id属性,以便在JavaScript代码中引用该表单。
接下来,在JavaScript代码中,使用$("#formId").submit()方法来提交表单,并使用event.preventDefault() 方法阻止提交表单时页面的完整postback。使用$.ajax()方法将表单数据发送到服务器,并在成功时执行回调函数。
以下是示例代码:
在HTML文件中:
@section Scripts{
}
在JavaScript文件中:
$('#myForm').submit(function (event) {
event.preventDefault(); // 阻止完整的postback
$.ajax({
type: 'POST',
url: '/PageName?handler=SaveForm',
data: $('#myForm').serialize(),
success: function (response) {
// 成功保存表单后执行的代码
},
error: function (xhr, ajaxOptions, thrownError) {
// 保存表单时出错后执行的代码
}
});
return false;
});