让我来敲 2017-11-27 13:49 采纳率: 100%
浏览 1411

关于mvc5中从前端向数据库提交数据的JQuery Ajax的post方法问题

最近初步接触了MVC5,想自行设计一个学生信息管理系统,但是遇到一个问题:通过网页输入一个ViewModel的全部属性之后,怎么将他通过JQuery Ajax的Post()方法提交到数据库
下面是我的StudentViewModel:
 public class Student
    {
        [Display(Name = "学号")]
        public int StdId { get; set; }
        [Display(Name = "姓名")]
        public string StdName { get; set; }
        [Display(Name = "性别")]
        public string StdSex { get; set; }
        [Display(Name = "年龄")]
        public int StdAge { get; set; }
    }
接着是StudentDataOperatin的Create方法:
public void Create(Student t)
        {
            IDbConnection con = new SqlConnection(this.Sqlcon);
            IDbCommand cmd = new SqlCommand(@"Insert into Student (StdId,StdName,StdSex,StdAge)Values(@StdId,@StdName,@StdSex,@StdAge);");
            cmd.Connection = con;
            cmd.Parameters.Add(new SqlParameter("@StdId", t.StdId));
            cmd.Parameters.Add(new SqlParameter("@StdName", t.StdName));
            cmd.Parameters.Add(new SqlParameter("@StdSex", t.StdSex));
            cmd.Parameters.Add(new SqlParameter("@StdAge", t.StdAge));
            con.Open();
            cmd.ExecuteNonQuery();
            con.Close();
        }
接着是Action:
public ActionResult Create2()
        {
            return View(new Student() { StdId = 1 });
        }
        [HttpPost]
        public ActionResult Create2(Student t)
        {
            try
            {
                // TODO: Add insert logic here
                studentDataOperation.Create(t);
                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }
然后就是View:
@model MVC2.Models.ViewModels.Student
@{
    ViewBag.Title = "Create2";
}

    $(document).ready(function () {         $("button").click(function () {             alert("嗯哼哼~");             var Id = $("#StdId").val();             var Name = $("#StdName").val();             var Sex = $("#StdSex").val();             var Age = $("#StdAge").val();             $.post("Student/Create2", {@Model.StdId=Id,@Model.StdName=Name,@Model.StdSex=Sex,@Model.StdAge=Age}, function (status) {                 alert("添加" + status);             });         });     });

Create2

学号:

姓名:

性别:

年龄:

添加

各位路过的神仙能帮忙解决下不?

:至于属性名Std*,是因为入门语言c++,写 using namespace std;习惯之后敲上去了,后来嫌麻烦就不改了。。。。。

  • 写回答

2条回答 默认 最新

  • 微云村 2017-11-28 00:37
    关注

    请把错误信息贴出来才能定位问题出在哪,你的post结构没哟错,要是参数没问题的话,那就是post的URL错了

    评论

报告相同问题?

悬赏问题

  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题