I have created one web service with two methods. First method is without parameter calling on load which is working fine, my second method have dateparameter(textbox), i am not getting parameter value in code behind (on buttong click i am calling this parametrised function)
<script type="text/javascript">
$j = $.noConflict();
$j(document).ready(function () {
$j.ajax({
type: "POST",
dataType: "json",
url: "ClaimService.asmx/GetClaims",
success: function (data) {
var datatableVariable = $j('#example2').DataTable({
data: data,
"bLengthChange": false,
"bFilter": false,
"bPaginate": true,
"pageLength": 10,
columns: [
{ 'data': 'Name' },
{ 'data': 'IntimationDate' },
{ 'data': 'PolicyNo' },
{ 'data': 'Status' },
]
});
}
});
});
function GetDataByFilter() {
var startDate = $j("[id*=startDate]").val();
$j.ajax({
type: "POST",
dataType: "json",
url: "ClaimService.asmx/GetClaimsByFilter",
data: "{startDate: '" + startDate + "'}",
success: function (data) {
var datatableVariable = $j('#example2').DataTable({
data: data,
"bLengthChange": false,
"bFilter": false,
"bPaginate": true,
"pageLength": 10,
columns: [
{ 'data': 'Name' },
{ 'data': 'IntimationDate' },
{ 'data': 'PolicyNo' },
{ 'data': 'Status' },
]
});
}
});
}
</script>
[WebMethod]
public void GetClaims()
{
var cs = ConfigurationManager.ConnectionStrings["SQLConnection"].ConnectionString;
var students = new List<MemberDetails>();
using (var con = new SqlConnection(cs))
{
var cmd = new SqlCommand("select * from Claim_Master", con) { CommandType = CommandType.Text };
con.Open();
var dr = cmd.ExecuteReader();
while (dr.Read())
{
var student = new MemberDetails
{
Name = dr["FirstName"].ToString(),
IntimationDate = dr["IntimationDate"].ToString(),
PolicyNo = dr["PolicyNo"].ToString(),
Status = dr["Status"].ToString()
};
students.Add(student);
}
}
var js = new JavaScriptSerializer();
Context.Response.Write(js.Serialize(students));
}
[WebMethod]
public void GetClaimsByFilter(string startDate)
{
var cs = ConfigurationManager.ConnectionStrings["SQLConnection"].ConnectionString;
var students = new List<MemberDetails>();
using (var con = new SqlConnection(cs))
{
var cmd = new SqlCommand("select * from Claim_Master", con) { CommandType = CommandType.Text };
con.Open();
var dr = cmd.ExecuteReader();
while (dr.Read())
{
var student = new MemberDetails
{
Name = dr["FirstName"].ToString(),
IntimationDate = dr["IntimationDate"].ToString(),
PolicyNo = dr["PolicyNo"].ToString(),
Status = dr["Status"].ToString()
};
students.Add(student);
}
}
var js = new JavaScriptSerializer();
Context.Response.Write(js.Serialize(students));
}
thanks in advance.
What I have tried:
I checked in browser i can see date value but i am not getting value in code behind, it is not coming into that second method (GetClaimsByFilter)