htm页的提交中我写的是:(其中msg为"一,二,三,"等汉字组合,中间用逗号分开。)
document.location="frmcgrkhz.aspx?imonth="+lbmonth.value+"&strcheck="+msg;
在服务器端这样接收:
string []field=Request["strcheck"].Split(',');
为什么field里只传进",,"
也就是在客户端的htm中怎么编码呢?
document.location="frmcgrkhz.aspx?imonth="+lbmonth.value+"&strcheck="+msg;
在服务器端这样接收:
string []field=Request["strcheck"].Split(',');
为什么field里只传进",,"
也就是在客户端的htm中怎么编码呢?
<!--
function urlencode(str) {
var ns = (navigator.appName=="Netscape") ? 1 : 0;
if (ns) { return escape(str); }
var ms = "%25#23 20+2B?3F<3C>3E{7B}7D[5B]5D|7C^5E~7E`60";
var msi = 0;
var i,c,rs,ts ;
while (msi < ms.length) {
c = ms.charAt(msi);
rs = ms.substring(++msi, msi +2);
msi += 2;
i = 0;
while (true) {
i = str.indexOf(c, i);
if (i == -1) break;
ts = str.substring(0, i);
str = ts + "%" + rs + str.substring(++i, str.length);
}
}
return str;
}
//-->
</script>
中文编码成%xx%xx,双字节的。
如果不行可能就是逗号和中文的问题了,request方式传参是有很多问题的,进行编码转换吧
例如escape/unescape