Tuesday, October 30, 2018

MVC CRUD OPERATION WITH VALIDATION (FORM SUBMIT)

@using DAL.Models;
@model DAL.Models.employee
@using (@Html.BeginForm("Saveemployee", "Employee", FormMethod.Post, new { id = "form_Employee" }))
{
    @Html.ValidationSummary(true)
<table>
                <colgroup>
                    <col width="25%" />
                    <col width="75%" />
                </colgroup>

                <tr>
                    <td class="editor-label" style="vertical-align: top">
                        @Html.LabelFor(model => model.Name):
                    </td>
                    <td>
                        @Html.TextBoxFor(model => model.Name, new { @id = "txtname", @onkeydown = "if(event.keyCode==13)  event.preventDefault();" })
                        @Html.ValidationMessageFor(model => model.Name)
                    </td>
                </tr>
</table
}

var SaveData = function () {
        $("#form_Employee").validate();
        $("#fform_Employee").valid();
            if(!ValidationStartDate())
            return false;
        if ($("#fform_Employee").valid()) {
            var data = GetFormData("#fform_Employee");            
            var form = $('#fform_Employee');
            var url = $(form).attr('action');
            var requesttype = $(form).attr('method');

            $.ajax({

                type: requesttype,
                url: url,
                data: JSON.stringify(data),
                async: false,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                beforeSend: function (res) {
                    $('#btnSave').attr('disabled', true);
                },
                success: function (res) {
                    if (res) {

                        $('#divEmployee').dialog('close');
                        alert("Details Saved Successfully");                      

                    }
                    else {
                        $('#btnSave').attr('disabled', false);
                        alert("Error in saving Details");
                    }
                }

            });
        }

        else {
            $('#btnSave').attr('disabled', false);
            return false;
        }

    };
--------------------------------------------------------------------------------------

    function GetFormData(form) {

        var formObject = $(form).serializeArray();


        var data = {};

        $.each(formObject, function (index, ele) {

            var groupIds = [];

            var groupobjects = $.map(formObject, function (obj, index) {
                if (obj.name == ele.name) {
                    groupIds.push(obj.value);
                    return obj;
                }
            });
            if (groupobjects.length > 1 && groupIds.length > 1) {

                data[ele.name] = groupIds;

            }
            else {
                data[ele.name] = ele.value;
            }


        });

        return data;
    };

===================================================================

      [HttpPost]
        [CustomAuthorize]
        public JsonResult Saveemployee(Employee model)
        {
            model.Aff_CountryID = 1;
            var res = EmployeeBL.SaveEmployee(model);
            return Json(res, JsonRequestBehavior.AllowGet);
        }
       public static bool SaveEmployeeEmployee model)
        {
            using (var entity = new DataEntities())
            {
                if (model.Id != 0)
                {
                    //update

                    var Existing = entity.tbl_Employee.Where(i => i.Id == model.Id).Select(i => i).FirstOrDefault();
                    Existing.Name = model.Name;
                    Existing.ModifiedDate = DateTime.Now;
                    Existing.ModifiedBy = model.CreatedBy;
                    entity.Entry(Existing).State = EntityState.Modified;
                }
                else
                {
                    //create
                    var res = new tbl_Employee
                    {
                        Name = model.Name.Trim(),
                        CreatedDate = DateTime.Now,
                        CreatedBy = model.CreatedBy,
                        ModifiedBy = model.CreatedBy,
                        ModifiedDate = DateTime.Now,
                        DeleteYN = false
                    };
                    entity.tbl_Employee.Add(res);
                }
                entity.SaveChanges();
                return true;
            }
        }
------------------------------------------
   public class Department
    {

        public Department()
        {
            employee = new List<Employees>();
            
        }
         public int Id { get; set; }

         [Required]
        [Display(Name = "DepNameName")]
        [Remote("CheckDuplicateName", "User", AdditionalFields = "Id,userid", ErrorMessage = "name Already Exists")]
        public string Name { get; set; }

  
            public List<Employees> employee { get; set; }

}

 public class Employees
    {
        [HiddenInput]
        public int ContactId { get; set; }
        [Display(Name = "First Name")]
        [Required]
        public string Firstname { get; set; }
}

No comments:

Post a Comment

javascript Filter/index off

 var family = [{"name":"Jack",  "age": 26},               {"name":"Jill",  "age"...