使用Html.BeginForm("ActionName", "ControllerName", FormMethod.Post, new { id = "formInfo" })提交数据的问题
来源:互联网 发布:安防网络系统 编辑:程序博客网 时间:2024/06/08 17:08
在程序开发中,发现一个问题,在cshtml中,使用
@using (Html.BeginForm("Save", "ITProject", FormMethod.Post, new { id = "formInfo" }))
的方式将表单的数据,用Ajax的方式传给Controller。
但是发现有时候参数无法传到后台。
例如,Ajax的写法是:
$.ajax({
url: $("#formInfo").attr("action"),
data: newProjectInfo,
type: "post",
dataType: 'json',
success: function (r) {
if (r.state == "success") {
$.modalMsg(r.message);
$.loading(false);
}
else {
$.modalAlert(r.message);
$.loading(false);
}
}
, error: function (r) {
$.ajaxErrorProcess(r);
$.loading(false);
}
})
而在Controller中,处理函数的写法是:
public JsonResult Save(DomainEntities.Models.ITProject.ProjectNewInfo projectInfo)
{
try
{
_ProjectService.SaveNewProjectInfo(projectInfo);
return Success("保存成功");
}
catch(Exception ex)
{
FileLogger.Error("保存信息失败", ex);
return Error($"保存失败,{ex.Message}");
}
}
在调试中发现,有时候Save方法的参数(projectInfo)并没有获得Ajax的data值(newProjectInfo)。
解决方式是:
在调用Ajax是,显示的指定
data: {projectInfo:newProjectInfo}
修改为上述格式后,传值成功。
明白人可以帮助解释一下。
- 使用Html.BeginForm("ActionName", "ControllerName", FormMethod.Post, new { id = "formInfo" })提交数据的问题
- @using (Html.BeginForm("Login", "Account", FormMethod.Post)){},替代HTML中的Form
- 使用Html.BeginForm来提交表单
- 使用Html.BeginForm来提交表单
- MVC4设置@Html.BeginForm的ID
- 注册登录过程点滴(三):解决MVC3中使用Ajax.BeginForm会重复提交数据的问题
- Html.ActionName的用法
- [.Net码农][MVC]使用Html.BeginForm来提交表单
- MVC |表单提交 Html.BeginForm
- 使用HttpClient的post提交数据遇到的问题
- Html.BeginForm 与 Ajax.BeginForm 使用Html.ValidationMessage显示错误的注意事项
- 同一个表单,以不同的请求方式提交,使用formmethod属性
- 使用POST提交数据
- MVC Html.BeginForm 使用心得
- HttpWebRequest使用POST提交数据的
- Html.BeginForm方法没有生成Form标签的问题
- HTML中表单提交数据GET、POST的区别
- html页面数据提交乱码的问题
- ButterKnife的使用
- 性能测试语句
- python基础之程序执行
- 元素隐藏详解
- Hibernate缓存机制详解
- 使用Html.BeginForm("ActionName", "ControllerName", FormMethod.Post, new { id = "formInfo" })提交数据的问题
- CSS 伪类及伪元素用法详解
- Android 基础知识
- Java 空判断
- LeetCode 算法刷题(13)
- HDU6020 MG loves apple
- Unity3D作业六项目一——优化打飞碟游戏
- eclipse启动项目报错: java.lang.OutOfMemoryError:PermGen space
- 正则表达式解析