无法接收客户端的数据
问题描述:
我想从客户端发送两个列表和日期值到服务器。我创建我的网址,当我警觉它是正确的。当我将数据发送到服务器时,我正在尝试提取,但我没有正确地获取我的值。这里是我的JQ代码:无法接收客户端的数据
$("#insert").click(function() {
listofsit = "";
$(".sel").each(function() {
listofsit += $(this).val() + ",";
});
listofsit += "#";
//alert(listofsit);
listofmem = "";
$(".clsid").each(function() {
listofmem += $(this).html() + ",";
});
listofmem += "#";
// alert(listofmem);
var date = $("#date").val();
var url = "rollcall.aspx?cmd=ins&sitlist=" + listofsit + "&memlist=" + listofmem +"&date=" + date;
// alert(url);
$.post(url, function (d) { alert(d) });
});
,这里是我的C#部分:
if (cmd == "ins")
{
mydb db = new mydb();
string[] sitlst = Request.QueryString[1].ToString().Split(',');
string[] memt = Request.QueryString[2].ToString().Split(',');
var date = Request["date"];
Response.Write("1");
cmd = "fillgrid";
Response.End();
}
答
你把#
到您的网址。这意味着#
(memlist
和date
参数)之后的任何内容都将被视为URL片段,而不是查询字符串的一部分。
删除#
它应该工作。
非常感谢你的工作。但我可以用任何其他字符替换#?以指出列表的结尾。我知道这是没有必要的,但是... –
是的,这是可能的,我用“e”代替它。但#是什么问题。我不知道我明白。 –
为什么这是必要的 - 列表的末尾只是列表中的最后一项? '#'是URL中的一个保留字符,用于指向页面中的锚点。 –