Я использую jQuery ajax, но ответ показывает пустое значение в всплывающем окне. Если я предупреждаю статическое сообщение в области успеха, то покажу свое сообщение, и если я попытаюсь предупредить ответ, данные будут показаны пустым.
Пожалуйста помоги
[WebMethod, ScriptMethod(UseHttpGet = true)]
public static string InsertData(string MainArr)
{
string sSuccess=string.Empty;
JavaScriptSerializer JSS=new JavaScriptSerializer();
propertyClass[] arr=JSS.Deserialize<propertyClass[]>( MainArr);
if (arr.Length > 0)
{
sSuccess = "SUCCESS";
}
else
{
sSuccess = "No";
}
return sSuccess;
}
public class propertyClass
{
public string UserName { get; set; }
public string Password { get; set; }
public string EmailId { get; set; }
public string Mobile { get; set; }
}
Jquery
$('[id$=submitdata]').click(function () {
//Set Data in variable
var MainArr = [];
var vUserName = $('[id$=txtUserName]').val();
var vPassword = $('[id$=txtPassword]').val();
var vEmailId = $('[id$=txtEmail]').val();
var vMobile = $('[id$=txtMobile]').val();
//Push data in array
MainArr.push({
UserName: vUserName,
Password: vPassword,
EmailId: vEmailId,
Mobile: vMobile
});
//Insert data
$.ajax({
type: "Post",
url: "Validation.aspx/InsertData",
data: JSON.stringify(MainArr),
cache: false,
success: function (data) {
alert(data);
},
error: function () { alert('error') }
});
return false;
});
Может быть, это помогло бы вам:
Способ 1
Клиентский код -
$('[id$=submitdata]').click(function () {
//Set Data in variable
var MainArr = [];
var vUserName = $('[id$=txtUserName]').val();
var vPassword = $('[id$=txtPassword]').val();
var vEmailId = $('[id$=txtEmail]').val();
var vMobile = $('[id$=txtMobile]').val();
//Push data in array
MainArr.push({
UserName: vUserName,
Password: vPassword,
EmailId: vEmailId,
Mobile: vMobile
});
//Insert data
$.ajax({
type: "Post",
url: "Validation.aspx/InsertData",
data: JSON.stringify({ myArr: MainArr }),
cache: false,
success: function (data) {
alert(data);
},
error: function () { alert('error') }
});
return false;
});
Код на стороне сервера -
[System.Web.Services.WebMethod]
public static string InsertData(List<string> myArr)
{
string sSuccess = string.Empty;
JavaScriptSerializer JSS = new JavaScriptSerializer();
propertyClass[] arr = JSS.Deserialize<propertyClass[]>(myArr[0].ToString());
if (arr.Length > 0)
{
sSuccess = "SUCCESS";
}
else
{
sSuccess = "No";
}
return sSuccess;
}
Способ 2
Клиентский код -
$('[id$=submitdata]').click(function () {
//Set Data in variable
var MainArr = [];
var vUserName = $('[id$=txtUserName]').val();
var vPassword = $('[id$=txtPassword]').val();
var vEmailId = $('[id$=txtEmail]').val();
var vMobile = $('[id$=txtMobile]').val();
//Push data in array
MainArr.push({
UserName: vUserName,
Password: vPassword,
EmailId: vEmailId,
Mobile: vMobile
});
//Insert data
$.ajax({
type: "Post",
url: "Validation.aspx/InsertData",
data: "{'myArr':" + JSON.stringify(MainArr) + "}",
cache: false,
success: function (data) {
alert(data);
},
error: function () { alert('error') }
});
return false;
});
Код на стороне сервера -
[System.Web.Services.WebMethod]
public static string InsertData(List<string> myArr)
{
string sSuccess = string.Empty;
JavaScriptSerializer JSS = new JavaScriptSerializer();
propertyClass[] arr = JSS.Deserialize<propertyClass[]>(myArr[0].ToString());
if (arr.Length > 0)
{
sSuccess = "SUCCESS";
}
else
{
sSuccess = "No";
}
return sSuccess;
}