按上面应该是可以的,我没去试试。var data = $("#form").serialize(); 这个只是把Form值取出来而以,如:playerid=1234&age=20&nickname=Hello&realname=1233中国 我就自己修改了data的值,编码一下: data = encodes(data,"nickname,realname");/** encodes方法 */ function encodes(data, names) { names = names.split(","); for (var i=0; i<names.length; i++) { if (names[i] != "" && names[i] != null) { var start = data.indexOf(names[i]); var endStr = data.substring(start); var end = endStr.indexOf("&"); if (end == -1) end = endStr.length; var mid=endStr.indexOf("=")+1; var value=endStr.substring(mid, end); //var nameValue = endStr.substring(0, end); var nameValue = names[i] + "=" + value;
url:"../ajax/manage.asp?action=checkEmailOnly",
data:{"email":email},
type:"post",
dataType:"json",
你把参数做成一个对象放data配置中就行了,很简单,对form中的input做一次遍历就行了
这个只是把Form值取出来而以,如:playerid=1234&age=20&nickname=Hello&realname=1233中国
我就自己修改了data的值,编码一下:
data = encodes(data,"nickname,realname");/** encodes方法 */
function encodes(data, names) {
names = names.split(",");
for (var i=0; i<names.length; i++) {
if (names[i] != "" && names[i] != null) {
var start = data.indexOf(names[i]);
var endStr = data.substring(start);
var end = endStr.indexOf("&");
if (end == -1)
end = endStr.length;
var mid=endStr.indexOf("=")+1;
var value=endStr.substring(mid, end);
//var nameValue = endStr.substring(0, end);
var nameValue = names[i] + "=" + value;
nameValue = encodeURI(nameValue);
data = data.substring(0,start)+nameValue+endStr.substring(end);
} else {
alert(names[i] + "为空");
}
}
return data;
}
这样也已经把问题解决了。其实这些是JQuery 早就帮我们做好了吧