ho cercato di riprodurre al volo la tua situazione e ho visto e ho visto che una pagina aspx non puo accettare (almeno non cosi) richieste ajax post.
per questi lavori non usare la pagina aspx ma un gestore generico (.ashx) e dovresti risolvere il problema.
questo è il codice che ho provato con ashx e che funziona....stessa cosa nel page_load di aspx ritorna errore 500 (per mia curiosità scopriro i dettagli del perche).
GESTORE.ASHX
codice:
public class Handler1 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string req = context.Request["id"].ToString();
context.Response.Write("Inviato ID" + req);
}
public bool IsReusable
{
get
{
return false;
}
}
}
PAGINA HTML CLIENT.HTM (guarda come è piu bello con jquery!)
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<span id="result"></span>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
<script>
$(document).ready(function () {
var id = 3;
$.ajax({
//type: "POST",
url: 'handler1.ashx',
data: 'id=' + id,
success: function (res) {
$('#result').text(res);
},
error: function (err) {
$('#result').text(err);
}
});
});
</script>
</body>
</html>
P.S.
Piu debug! il fatto che la richiesta ritorna un codice 500 è una cosa che dovevi vedere tu invece di scrivere che "non legge il parametro"