Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 我想在mvc3中使用不同的按钮以及mvc3中的javascript处理单个视图上的crud操作_Asp.net Mvc 3 - Fatal编程技术网

Asp.net mvc 3 我想在mvc3中使用不同的按钮以及mvc3中的javascript处理单个视图上的crud操作

Asp.net mvc 3 我想在mvc3中使用不同的按钮以及mvc3中的javascript处理单个视图上的crud操作,asp.net-mvc-3,Asp.net Mvc 3,我想在mvc3中使用不同的按钮以及mvc3中的javascript处理单个视图上的crud操作 实际上,我有一个帐户代码和描述字段的视图。 我想使用wcf服务在SQLServer2008R2数据库中添加、编辑和删除记录。 我想使用javascript编写客户端脚本。 我想通过javascript按钮点击事件调用控制器的方法 请告诉我怎么做 目前我有以下javascript函数 $(document).ready(function () { var today = new Date(); var

我想在mvc3中使用不同的按钮以及mvc3中的javascript处理单个视图上的crud操作

实际上,我有一个帐户代码和描述字段的视图。 我想使用wcf服务在SQLServer2008R2数据库中添加、编辑和删除记录。 我想使用javascript编写客户端脚本。 我想通过javascript按钮点击事件调用控制器的方法

请告诉我怎么做

目前我有以下javascript函数

$(document).ready(function () {
var today = new Date();
var dd = today.getDate();

$('#sve').click(function () {
    var person = { AcCode: $('#AcCode').val(), Descrip: $('#Descrip').val(), AddOn: dd };
    $.ajax({
        url: '/Home/Save',
        type: "POST",
        data: JSON.stringify(person),
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        success: function (result) {
            //   $('#message').html('Record saved successfully' + result).fadeIn();
            alert("Record saved successfully");
        },
        error: function () {
            //    $('#message').html('Error Occurred').fadeIn(); 
            alert("Record not saved successfully");
        }
    });
    return false;
});
});
下面是保存按钮的控制器代码

 [Authorize]
     // [Authorize(Roles = "Administrators")] 
     [HttpPost]
     [MultiButton(MatchFormKey = "action", MatchFormValue = "Save")]
            public ActionResult Save(AccntBD model)
     {
         CBSWCF.Account useInfo = new CBSWCF.Account();
         if (ModelState.IsValid)
         {
             if (!model.IsAcCodeExist(model.AcCode))
             {
                 string ObjUser = User.Identity.Name;
                 string ObjUid = string.Empty;
                   AcntEnt.AcCode = model.AcCode;
                 AcntEnt.Descrip = model.Descrip;
                  objSvc.ACodeSave2(AcntEnt);
                              }
             else
             {
                 ModelState.AddModelError("CustomError", "Account Code Already Exist");
             }
         }
         else
         {
             ModelState.AddModelError("", "");
         }
         return View(model);
     }
我使用以下代码在单个视图中使用多个按钮。 [AttributeUsage(AttributeTargets.Method,AllowMultiple=false,Inherited=true)] 公共类MultiButtonAttribute:ActionNameSelectorAttribute { 公共字符串MatchFormKey{get;set;} 公共字符串MatchFormValue{get;set;}

    public override bool IsValidName(ControllerContext controllerContext, string actionName, MethodInfo methodInfo)
    {
        return controllerContext.HttpContext.Request[MatchFormKey] != null &&
            controllerContext.HttpContext.Request[MatchFormKey] == MatchFormValue;
    }
}
现在的问题是,javascript并没有命中我的save函数,并且向我显示消息notsavedcessfully。
如果您通过JavaScript提交表单,则无需向控制器操作添加MultiButton属性。MultiButton属性是为您希望将提交按钮映射到特定控制器操作而创建的,这是可能的,因为当您通过提交按钮提交表单时,submit按钮name属性被添加到帖子正文中,并带有其提交按钮的特定值,例如

<input type="submit" name="ButtonName" value="ButtonOne"/> <!-- would post ButtonName=ButtonOne -->
<input type="submit" name="ButtonName" value="ButtonTwo"/> <!-- would post ButtonNAme=ButtonTwo -->
url: '/Home/Save?ButtonName=ButtonOne'