When this function is hit , it does not call my function in code behind? Why could it be doing this? How can I fix this error.
$(document).ready(function() {
           $('[id$=btn_Update]').click(function() { 
           var reten = $('[id$=txt_Reten]').val();
            var i=0; 
            var selectValues = "";
            var ProdID = new Array();         
            $("#lst_ProdId option").each(function() {  
                 selectValues = selectValues + $(this).text() + ",";                 
                 ProdID[i] = $(this).text();
                 i++;
             });  
             for(var j=0; j < ProdID.length;j++)
             {
               // alert(ProdID[j]);
             }
          var params = "{'ProdID':'" + ProdID + "','RetenP':'" + reten + "'}";
             $.ajax({
                    type: "POST",
                    url: "/ProductPricing/Products/RetenPeriod.aspx/UpdateRetenPeriod",
                    data: params,
                    contentType: "application/json; charset=utf-8",                    
                    datatype: "json",
                    success: function(result) {
                        alert("sucess");
                    },
                    error:function(e) {
                        alert(e.statusText);
//                        if(errorThrown != null)
//                            alert(textStatus+ ":"+errorThrown);
//                        else
//                            alert("fail");
                    }
                    });             
             return false;
             });
             return false;
        });
This is my webmethod in code behind:
[WebMethod]
public static bool UpdateRetenPeriod(string[] ProdID,string RetenP)  
{
     for (int i = 0; i < ProdID.Length; i++)
     {
        update(ProdID[i],RetenP);
      }
    return true;
}