在不重新加载页面的情况下提交ASP.NET Core Razor页面表单,可以通过使用JavaScript和AJAX来实现。
以下是实现步骤:
下面是一个示例代码:
<!-- Razor页面 -->
<form id="myForm">
<input type="text" name="name" />
<input type="email" name="email" />
<button type="button" onclick="submitForm()">提交</button>
</form>
<script>
function submitForm() {
var form = document.getElementById("myForm");
var formData = new FormData(form);
var xhr = new XMLHttpRequest();
xhr.open("POST", "/Controller/Action", true);
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.onload = function () {
if (xhr.status === 200) {
// 请求成功,可以根据返回结果进行相应的处理
console.log(xhr.responseText);
} else {
// 请求失败,可以进行错误处理
console.error(xhr.statusText);
}
};
xhr.onerror = function () {
// 请求发生错误,可以进行错误处理
console.error(xhr.statusText);
};
xhr.send(formData);
}
</script>
在上面的代码中,需要将/Controller/Action
替换为实际的控制器和动作方法的URL地址。
请注意,该示例中使用了原生的JavaScript和AJAX来实现,您也可以使用第三方库(如jQuery)简化代码。
ASP.NET Core的控制器(Controller)负责接收并处理表单数据。根据您的实际需求,您可以在控制器中执行相关的业务逻辑,如将数据保存到数据库、发送电子邮件等。
希望以上内容对您有所帮助!如果需要了解更多ASP.NET Core或其他云计算领域的知识,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云