How to Get Values From dynamic Id's and Pass to Controller using Ajax - json

function Save() {
var count = $("#count").val();//count to iterate
var obj = {}
for (var i = 0; i < count ; i++) //iterating for each set of id's
{
obj = {
chckaids : $("#chckaids" + i).val(),
size : $("#size " + i).val(),
freq : $("#freq" + i).val(),
control : $("#control " + i).val(),
plan : $("#plan" + i).val(),
type : $("#type").val(),
qty : $("#qty").val(),
rejected : $("#rejected ").val(),
remark : $("#remark").val()
}
}
$.ajax({
url: "../SaveQCInspection",
type: "Post",
data: JSON.stringify([obj]),
contentType: 'application/json; charset=utf-8',
success: function (data) {
},
error: function () { }
});
}
I need to get all the values in the dynamic id's and pass it to ajax as single object...Experts told me to use Json-model,I googled but still didn't get any idea about that.....Please guide me whether it is easy to use json model or it is the only way to acheive this ...
Thank you in advance.....:)

You can push your items to an array then can stringify it
function Save() {
var count = $("#count").val();//count to iterate
var list = [];
for (var i = 0; i < count ; i++) //iterating for each set of id's
{
var obj = {
chckaids : $("#chckaids" + i).val(),
size : $("#size " + i).val(),
freq : $("#freq" + i).val(),
control : $("#control " + i).val(),
plan : $("#plan" + i).val(),
type : $("#type").val(),
qty : $("#qty").val(),
rejected : $("#rejected ").val(),
remark : $("#remark").val()
}
list.push(obj)
}
$.ajax({
url: "../SaveQCInspection",
type: "Post",
data: JSON.stringify(list),
contentType: 'application/json; charset=utf-8',
success: function (data) {
},
error: function () { }
});
}

Related

trying to upload Image in mvc web api project using jquery ajax only

I am trying to upload Image but upon running my application my Image parameter is passing null, and I don't know why it is not picking up the file I attached
but in my browser console when I check my image file object that if it is attached or not, it shows that it does attach
but in my controller its passing null
my ajax code where I am passing the image file object,
$('.empOfficialDetails').click(function (ev) {
ev.preventDefault();
var data = new Object();
data.UserName = $('#username').val();
data.UPassword = $('#userpass').val();
data.OfficialEmailAddress = $('#officialemail').val();
data.Departments = $('#departments :selected').text();
data.Designation = $('#designation :selected').text();
data.RoleID = $('#role').val();
data.Role = $('#role :selected').text();
data.ReportToID = $('#reportToID').val();
data.ReportTo = $('#reportTo :selected').text();
data.JoiningDate = $('#joindate').val();
data.IsAdmin = $('#isAdmin :selected').val() ? 1 : 0;
data.IsActive = $('#isActive :selected').val() ? 1 : 0;
data.IsPermanent = $('#isPermanent :selected').val() ? 1 : 0;
data.DateofPermanancy = $('#permanantdate').val();
data.HiredbyReference = $('#hiredbyRef :selected').val() ? 1 : 0;
data.HiredbyReferenceName = $('#refePersonName').val();
data.BasicSalary = $('#basicSalary').val();
data.CurrentPicURL = $('.picture')[0].files; //this is my image file object
//data.EmpID = $('.HiddenID').val();
if (data.UserName && data.UPassword && data.OfficialEmailAddress && data.Departments && data.Designation && data.Role && data.IsAdmin && data.IsPermanent) {
$.ajax({
url: 'http://localhost:1089/api/Employee/EmpOfficialDetails',
type: "POST",
dataType: 'json',
contentType: "application/json",
data: JSON.stringify(data),
enctype: 'multipart/form-data',
beforeSend: function () {
$("#dvRoomsLoader").show();
},
complete: function () {
$("#dvRoomsLoader").hide();
},
success: function (data) {
var ID = parseInt(data);
if (ID > 0) {
//var id = data;
$(".HiddenID").val(data);
//var id = $(".HiddenID").val();
$('#official').css('display', 'block');
$('#official').html("Employees Official details added successfully...!");
$('#official').fadeOut(25000);
$("#dvRoomsLoader").show();
$('.empOfficialDetails').html("Update <i class='fa fa-angle-right rotate-icon'></i>");
}
else {
$('#official').find("alert alert-success").addClass("alert alert-danger").remove("alert alert-success");
}
},
error: function (ex) {
alert("There was an error while submitting employee data");
alert('Error' + ex.responseXML);
alert('Error' + ex.responseText);
alert('Error' + ex.responseJSON);
alert('Error' + ex.readyState);
alert('Error' + ex.statusText);
}
});
}
return false;
});
but in controller on running the code it passes null
public void EmployeeImage(HttpPostedFileBase file)
{
var allowedExtensions = new[] { ".Jpg", ".png", ".jpg", "jpeg" };
var fileName = Path.GetFileName(file.FileName);
var ext = Path.GetExtension(file.FileName); //getting the extension(ex-.jpg)
byte[] bytes;
using (BinaryReader br = new BinaryReader(file.InputStream))
{
bytes = br.ReadBytes(file.ContentLength);
}
if (allowedExtensions.Contains(ext)) //check what type of extension
{
string name = Path.GetFileNameWithoutExtension(fileName); //getting file name without extension
string myfile = name + "_" + ext; //appending the name with id
var path = Path.Combine(System.Web.Hosting.HostingEnvironment.MapPath("~/assets/img/profiles/employeeImages"), myfile); // store the file inside ~/project folder(Img)
file.SaveAs(path);
}
}
public int Emp_OfficialDetails(Employee emp)
{
//SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["AmanraHRMS"].ConnectionString);
var con = DB.getDatabaseConnection();
SqlCommand com = new SqlCommand("sp_InsEmpOfficialDetails", con);
com.CommandType = CommandType.StoredProcedure;
#region Employee Official Details Insert Code block
com.Parameters.AddWithValue("#UserName", emp.UserName);
com.Parameters.AddWithValue("#pass", emp.UPassword);
com.Parameters.AddWithValue("#OfficialEmailAddress", emp.OfficialEmailAddress);
com.Parameters.AddWithValue("#Department", emp.Departments);
com.Parameters.AddWithValue("#Role", emp.Role);
com.Parameters.AddWithValue("#IsAdmin", Convert.ToBoolean(emp.IsAdmin));
com.Parameters.AddWithValue("#Designation", emp.Designation);
com.Parameters.AddWithValue("#ReportToID", emp.ReportToID);
com.Parameters.AddWithValue("#ReportTo", emp.ReportTo);
com.Parameters.AddWithValue("#JoiningDate", Convert.ToDateTime(emp.JoiningDate));
com.Parameters.AddWithValue("#IsPermanent", Convert.ToBoolean(emp.IsPermanent));
com.Parameters.AddWithValue("#DateofPermanancy", Convert.ToDateTime(emp.DateofPermanancy));
com.Parameters.AddWithValue("#IsActive", Convert.ToBoolean(emp.IsActive));
com.Parameters.AddWithValue("#HiredbyReference", Convert.ToBoolean(emp.HiredbyReference));
com.Parameters.AddWithValue("#HiredbyReferenceName", emp.HiredbyReferenceName);
com.Parameters.AddWithValue("#BasicSalary", emp.BasicSalary);
com.Parameters.AddWithValue("#CurrentPicURL", emp.CurrentPicURL);
#endregion
var file = emp.CurrentPicURL;
EmployeeImage(file);
var ID = com.ExecuteScalar();
com.Clone();
return Convert.ToInt32(ID);
}
and in my model class my Image datatype is as
public HttpPostedFileBase CurrentPicURL { get; set; }
I have no Idea what I am doing wrong If anyone who knows about this, your help is highly appreciated my friend
You can't use JSON.stringify to upload a file via AJAX. You need to use the FormData class.
Sending files using a FormData object | MDN
const data = new FormData();
data.append("UserName", $('#username').val());
data.append("UPassword", $('#userpass').val());
...
const file = $('.picture')[0].files[0];
data.append("CurrentPicURL", file, file.name);
...
$.ajax({
url: 'http://localhost:1089/api/Employee/EmpOfficialDetails',
type: "POST",
data: data,
processData: false,
contentType: false,
beforeSend: function () {
...
NB: Unless you need to support Internet Explorer, you might want to use the Fetch API instead of AJAX. This can be much simpler, particularly when combined with async and await.

JSON Query that work in ASP.NET is not working in ASP.NET-Core 3.0 to retun query of fields from DB to User Form

Basically Below Script and related Action Result worked in in ASP.Net but does not work in ASP.Net-Core 2.2 or 3.0.
Apparently Newtosoft JSON is not fully Supported in ASP.Net-Core 3.0 or I do not know how convert for use.
I am not getting an Error ..., The Form just never populates.
I have Copied View and Controllers between .Net version with the same result.
Controller:
public ActionResult GetProductByID1(string id)
{
int AvProdId = Convert.ToInt32(id);
// According id to query the database and get the relevant values.
var query = _context.AvProducts.Where(c => c.AvProductId == AvProdId)
.Select(c =>
new
{
c.AvProductId,
ProductName = c.ProductName,
ProductDesc = c.ProductDesc,
ProductComplexityFac = c.ProductComplexityFac,
ProductComplexityBase = c.ProductComplexityBase,
TotalComplexity = c.TotalComplexity,
Component1Desc = c.Component1Desc,
Component2Desc = c.Component2Desc,
Component3Desc = c.Component3Desc,
Component4Desc = c.Component4Desc,
Component5Desc = c.Component5Desc,
Component6Desc = c.Component6Desc,
Component7Desc = c.Component7Desc,
Component8Desc = c.Component8Desc,
Component9Desc = c.Component9Desc,
Component10Desc = c.Component10Desc,
Component11Desc = c.Component11Desc,
Component12Desc = c.Component12Desc,
Component13Desc = c.Component13Desc,
Component14Desc = c.Component14Desc,
Component15Desc = c.Component15Desc,
ComponentComplexityFac1 = c.ComponentComplexityFac1,
ComponentComplexityFac2 = c.ComponentComplexityFac2,
ComponentComplexityFac3 = c.ComponentComplexityFac3,
ComponentComplexityFac4 = c.ComponentComplexityFac4,
ComponentComplexityFac5 = c.ComponentComplexityFac5,
ComponentComplexityFac6 = c.ComponentComplexityFac6,
ComponentComplexityFac7 = c.ComponentComplexityFac7,
ComponentComplexityFac8 = c.ComponentComplexityFac8,
ComponentComplexityFac9 = c.ComponentComplexityFac9,
ComponentComplexityFac10 = c.ComponentComplexityFac10,
ComponentComplexityFac11 = c.ComponentComplexityFac11,
ComponentComplexityFac12 = c.ComponentComplexityFac12,
ComponentComplexityFac13 = c.ComponentComplexityFac13,
ComponentComplexityFac14 = c.ComponentComplexityFac14,
ComponentComplexityFac15 = c.ComponentComplexityFac15
})
.FirstOrDefault();
return Json(query);
}
Script: from View that populates User form based on DropDownlist Selection
#* Product #1 Calc*#
<script type="text/javascript">
$(function () {
$("#AvProductId").change(function () {
// alert($(this).val() + " " + $(this).find("option:selected").html());
var id = $(this).val();
$.ajax({
type: "Post",
url: '#Url.Action("GetProductByID1", "SizingUserDashBoard")',
data: '{id: "' + id + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
//alert(data.LastName);
//$("#txtAvProdId").val(data.AvProductId);
//$("#txtProductName1").val(data.ProductName);
//$("#txtProductDesc1").val(data.ProductDesc);
//$("#txtProductComplexityFac1").val(data.ProductComplexityFac);
//$("#txtProductComplexityBase1").val(data.ProductComplexityBase);
//$("#txtTotalComplexity1").val(data.TotalComplexity);
//$("#txtComponent1Desc1").val(data.Component1Desc);
//$("#txtComponent2Desc1").val(data.Component2Desc);
//$("#txtComponent3Desc1").val(data.Component3Desc);
//$("#txtComponent4Desc1").val(data.Component4Desc);
//$("#txtComponent5Desc1").val(data.Component5Desc);
//$("#txtComponent6Desc1").val(data.Component6Desc);
//$("#txtComponent7Desc1").val(data.Component7Desc);
//$("#txtComponent8Desc1").val(data.Component8Desc);
//$("#txtComponent9Desc1").val(data.Component9Desc);
//$("#txtComponent10Desc1").val(data.Component10Desc);
//$("#txtComponent11Desc1").val(data.Component11Desc);
//$("#txtComponent12Desc1").val(data.Component12Desc);
//$("#txtComponent13Desc1").val(data.Component13Desc);
//$("#txtComponent14Desc1").val(data.Component14Desc);
//$("#txtComponent15Desc1").val(data.Component15Desc);
#* $("#TestProdDesc12").val(data.Component12Desc);
$("#TestProdDesc13").val(data.Component13Desc);
$("#Prod1Compnent2Desc").val($("#txtComponent2Desc1").val());
$("#Prod1Compnent3Desc").val($("#txtComponent3Desc1").val());*#
//$("#TestProdDesc12").val($("#txtComponent12Desc1").val());
//$("#TestProdDesc13").val($("#txtComponent13Desc1").val());
$("#DescProduct_1").val(data.ProductName);
$("#Prod1Compnent1Desc").val(data.Component1Desc);
$("#Prod1Compnent2Desc").val(data.Component2Desc);
$("#Prod1Compnent3Desc").val(data.Component3Desc);
$("#Prod1Compnent4Desc").val(data.Component4Desc);
$("#Prod1Compnent5Desc").val(data.Component5Desc);
$("#Prod1Compnent6Desc").val(data.Component6Desc);
$("#Prod1Compnent7Desc").val(data.Component7Desc);
$("#Prod1Compnent8Desc").val(data.Component8Desc);
$("#Prod1Compnent9Desc").val(data.Component9Desc);
$("#Prod1Compnent10Desc").val(data.Component10Desc);
$("#Prod1Compnent11Desc").val(data.Component11Desc);
$("#Prod1Compnent12Desc").val(data.Component12Desc);
$("#Prod1Compnent13Desc").val(data.Component13Desc);
$("#Prod1Compnent14Desc").val(data.Component14Desc);
$("#Prod1Compnent15Desc").val(data.Component15Desc);
$("#Compnent1Desc").val(data.Component1Desc);
$("#Compnent2Desc").val(data.Component2Desc);
$("#Compnent3Desc").val(data.Component3Desc);
$("#Compnent4Desc").val(data.Component4Desc);
$("#Compnent5Desc").val(data.Component5Desc);
$("#Compnent6Desc").val(data.Component6Desc);
$("#Compnent7Desc").val(data.Component7Desc);
$("#Compnent8Desc").val(data.Component8Desc);
$("#Compnent9Desc").val(data.Component9Desc);
$("#Compnent10Desc").val(data.Component10Desc);
$("#Compnent11Desc").val(data.Component11Desc);
$("#Compnent12Desc").val(data.Component12Desc);
$("#Compnent13Desc").val(data.Component13Desc);
$("#Compnent14Desc").val(data.Component14Desc);
$("#Compnent15Desc").val(data.Component15Desc);
$("#Prod1ComponentComplexityFac1_1").val(data.ComponentComplexityFac1);
$("#Prod1ComponentComplexityFac2_1").val(data.ComponentComplexityFac2);
$("#Prod1ComponentComplexityFac3_1").val(data.ComponentComplexityFac3);
$("#Prod1ComponentComplexityFac4_1").val(data.ComponentComplexityFac4);
$("#Prod1ComponentComplexityFac5_1").val(data.ComponentComplexityFac5);
$("#Prod1ComponentComplexityFac6_1").val(data.ComponentComplexityFac6);
$("#Prod1ComponentComplexityFac7_1").val(data.ComponentComplexityFac7);
$("#Prod1ComponentComplexityFac8_1").val(data.ComponentComplexityFac8);
$("#Prod1ComponentComplexityFac9_1").val(data.ComponentComplexityFac9);
$("#Prod1ComponentComplexityFac10_1").val(data.ComponentComplexityFac10);
$("#Prod1ComponentComplexityFac11_1").val(data.ComponentComplexityFac11);
$("#Prod1ComponentComplexityFac12_1").val(data.ComponentComplexityFac12);
$("#Prod1ComponentComplexityFac13_1").val(data.ComponentComplexityFac13);
$("#Prod1ComponentComplexityFac14_1").val(data.ComponentComplexityFac14);
$("#Prod1ComponentComplexityFac15_1").val(data.ComponentComplexityFac15);
},
error: function (xhr, ajaxOptions, thrownError) {
alert('Failed to retrieve Products.');
}
});
});
});
</script>
You need to lowercase initial letter of data.property and change the url like below:
#section Scripts{
<script type="text/javascript">
$(function () {
$("#AvProductId").change(function () {
var id = $(this).val();
$.ajax({
type: "Post",
url: '#Url.Action("GetProductByID1", "SizingUserDashBoard")'+'?id='+id,
//data: '{id: "' + id + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
console.log(data);
$("#DescProduct_1").val(data.productName);
$("#Prod1Compnent1Desc").val(data.component1Desc);
$("#Prod1Compnent2Desc").val(data.component2Desc);
$("#Prod1Compnent3Desc").val(data.component3Desc);
$("#Prod1Compnent4Desc").val(data.component4Desc);
$("#Prod1Compnent5Desc").val(data.component5Desc);
$("#Prod1Compnent6Desc").val(data.component6Desc);
$("#Prod1Compnent7Desc").val(data.component7Desc);
$("#Prod1Compnent8Desc").val(data.component8Desc);
$("#Prod1Compnent9Desc").val(data.component9Desc);
$("#Prod1Compnent10Desc").val(data.component10Desc);
$("#Prod1Compnent11Desc").val(data.component11Desc);
$("#Prod1Compnent12Desc").val(data.component12Desc);
$("#Prod1Compnent13Desc").val(data.component13Desc);
$("#Prod1Compnent14Desc").val(data.component14Desc);
$("#Prod1Compnent15Desc").val(data.component15Desc);
$("#Prod1ComponentComplexityFac1_1").val(data.componentComplexityFac1);
$("#Prod1ComponentComplexityFac2_1").val(data.componentComplexityFac2);
$("#Prod1ComponentComplexityFac3_1").val(data.componentComplexityFac3);
$("#Prod1ComponentComplexityFac4_1").val(data.componentComplexityFac4);
$("#Prod1ComponentComplexityFac5_1").val(data.componentComplexityFac5);
$("#Prod1ComponentComplexityFac6_1").val(data.componentComplexityFac6);
$("#Prod1ComponentComplexityFac7_1").val(data.componentComplexityFac7);
$("#Prod1ComponentComplexityFac8_1").val(data.componentComplexityFac8);
$("#Prod1ComponentComplexityFac9_1").val(data.componentComplexityFac9);
$("#Prod1ComponentComplexityFac10_1").val(data.componentComplexityFac10);
$("#Prod1ComponentComplexityFac11_1").val(data.componentComplexityFac11);
$("#Prod1ComponentComplexityFac12_1").val(data.componentComplexityFac12);
$("#Prod1ComponentComplexityFac13_1").val(data.componentComplexityFac13);
$("#Prod1ComponentComplexityFac14_1").val(data.componentComplexityFac14);
$("#Prod1ComponentComplexityFac15_1").val(data.componentComplexityFac15);
},
error: function (xhr, ajaxOptions, thrownError) {
alert('Failed to retrieve Products.');
}
});
});
});
</script>
}
Result:

Ajax Internal Server Error in Yii2

View urlCreate code
$ajaxSaveTestGrid = Yii::$app->urlManager->createUrl('testgrid/ajaxsave');
This Is My View Ajax Code
function saveRow(id, index) {
if(id == 'tbl_testGrid') {
save(id, index);
}
}
function save(id, index) {
var testGrid_name = $('#testGrid_name' + index).val();
var testGrid_qty = $('#testGrid_qty' + index).val();
var testGrid_price = $('#testGrid_price' + index).val();
var url = '$ajaxSaveTestGrid';
// alert(testGrid_name+testGrid_qty+testGrid_price);
$.ajax({
type: 'GET',
url: url,
data: {
testGrid_name:testGrid_name,
testGrid_qty:testGrid_qty,
testGrid_price:testGrid_price
},
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (response) {
if(response == 'error') {
alert('Fail to save! Please try again');
} else {
$('#testGrid_name' + index).attr(\"disabled\",true);
$('#testGrid_qty' + index).attr(\"disabled\",true);
$('#testGrid_price' + index).attr(\"disabled\", true);
$('#testGrid_save_button' + index).attr(\"class\", \"hidden\");
$('#testGrid_delete_button' + index).attr(\"class\", \"hidden\");
$('#testGrid_edit_button' + index).attr(\"class\", \"show\");
$('#hid_testGrid_id' + index).val(response[0].testgrid.id);
$('html,body').animate({scrollTop: $('#btn_testGrid').offset().top});
}
}
});
}
This is my Controller
public function actionAjaxsave() {
$result = array();
$testGrid_name = $_GET['testGrid_name'];
$testGrid_qty = $_GET['testGrid_qty'];
$testGrid_price = $_GET['testGrid_price'];
$model = new Testgrid();
$model->name = $testGrid_name;
$model->price = $testGrid_price;
$model->qty = $testGrid_qty;
if ($model->save()) {
array_push($result, ['testgrid' => $model]);
$result = Json::encode($result);
echo $result;
} else {
echo 'error';
}
}
It occurring Internal Server Error
I want to save json Data to model.
Internal Server Error means that your code has fatal errors and error displaying is turned off. If you want to see the error itself, you must enable error displaying.
Check out the following question with its answers: How do I get PHP errors to display?
After you see the error, you can fix it.
PS:
$testGrid_name = $_GET['testGrid_name'];
This is not a recommended way to access GET variables. Use Yii::$app->request->get('testGrid_name') instead

How to Insert Data Into Database Table Using jQuery in ASP.Net MVC4

im working on ASP.NET MVC 4 project. well i already insert data into a SQL Server database using jQuery using a post method in .
Now im trying to insert data into 2 tables using the same view, my problem is that i can't passing multiple POST parameters to Web API Controller Method. here is my js function and my controller code, ill apreciate your help
var add_ClientPreste = function () {
var dataContrat = {
REFCONTRAT : 'mc1' ,
DATECREATION : '2016-05-23',
DATEFINCONTRAT : '2016-05-23'
};
var dataClient = {
C_IDCLIENTGROUPE : 11 ,
C_IDLOCALITE:332,
DATECREATION : '2016-05-23',
DATEMODIFICATION : '2016-05-23',
CODECLIENTPAYEUR : '999999999' ,
NOMCLIENTPAYEUR : 'morad'
};
$.ajax({
type: 'POST',
url: 'add_ClientPayeurContrat',
dataType: 'json',
data:{dataClient},
success: function (data) {
if(data==0) {
alert("enregistrement avec success : " );
}
else {
alert("error : "+ data );
}
},
error : function(data1) {
alert("aaaaaaaaaaaaaa " +data1);
}
});
}
$('#btntest').on('click', function () {
add_ClientPreste();
});
$('#btntest').on('click', function () {
add_ClientPreste();
});
Controller code
[HttpPost]
public ActionResult add_ClientPayeurContrat(SIG_CLIENTPAYEUR dataClient, SIG_CONTRAT dataContrat)
{
string msg = "";
try
{
ModSigma1.SIG_CLIENTPAYEUR.Add(dataClient);
ModSigma1.SIG_CONTRAT.Add(dataContrat);
ModSigma1.SaveChanges();
msg = "0";
}
catch (Exception ex)
{
msg = ex.Message;
}
return new JsonResult { Data = msg, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
}
var add_ClientPreste = function () {
var dataContrat = {
REFCONTRAT : 'mc1' ,
DATECREATION : '2016-05-23',
DATEFINCONTRAT : '2016-05-23'
};
var dataClient = {
C_IDCLIENTGROUPE : 11 ,
C_IDLOCALITE:332,
DATECREATION : '2016-05-23',
DATEMODIFICATION : '2016-05-23',
CODECLIENTPAYEUR : '999999999' ,
NOMCLIENTPAYEUR : 'morad'
};
$.ajax({
type: 'POST',
url: 'add_ClientPayeurContrat',
dataType: 'json',
data:{dataClient: dataClient},
success: function (data) {
if(data==0){
alert("enregistrement avec success : " );
}
else {
alert("error : "+ data );
}
},
error : function(data1){
alert("aaaaaaaaaaaaaa " +data1);
}
});
}
$('#btntest').on('click', function () {
add_ClientPreste();
});
$('#btntest').on('click', function () {
add_ClientPreste();
});
//controller code
[HttpPost]
public ActionResult add_ClientPayeurContrat(SIG_CLIENTPAYEUR dataClient, SIG_CONTRAT dataContrat)
{
string msg = "";
try
{
ModSigma1.SIG_CLIENTPAYEUR.Add(dataClient);
ModSigma1.SIG_CONTRAT.Add(dataContrat);
ModSigma1.SaveChanges();
msg = "0";
}
catch (Exception ex)
{
msg = ex.Message;
}
return new JsonResult { Data = msg, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
}
you did not add dataClient: dataClient in ajax.
so please add this.
Hope this will help you.

How to Access each elements in the following json output

Here is my j-son output and i want to access inner elements element.
how should i do that?
i have tried to access them in the following way
data[10];
but it didn't worked
public JsonResult ShowEventsList()
{
using (EventSchedularEntities db = new EventSchedularEntities())
{
var EventsList = from evnt in db.Events
select new
{
id = evnt.EventID,
Subject = evnt.EventName,
Description = evnt.EventDesc,
StartTime = evnt.EventDateBegin,
EndTime = evnt.EventDateEnd,
Color = evnt.Importance,
};
List<object[]> LstEvents = new List<object[]>();
foreach (var ev in EventsList)
{
LstEvents.Add(new object[] { ev.id, ev.Subject, ev.Description,DateTime.Parse(ev.StartTime.ToString()).ToString("M/dd/yyyy hh:mm").Replace("-", "/"), DateTime.Parse(ev.EndTime.ToString()).ToString("M/dd/yyyy hh:mm").Replace("-", "/"), ev.Color });
}
return Json( LstEvents, JsonRequestBehavior.AllowGet);
}
}
$.ajax({
type: "POST",
url: "../EventScheduler/ShowEventsList",
datatype: "json",
success: function (result)
{
var data = JSON.parse(result);
alert(data);
}