我使用AjaxPro向后台一个函数传参,js代码如下
function Sumbit() {
var xml = "";
document.getElementById("Sumbmit1").display = "none";
xml = "<?xml version=\"1.0\" encoding=\"GB2312\"?>";
xml += "<Sites>";
xml += "<cmessage>";
xml += "<name>" + document.getElementById("name").value + "</name>";
xml += "<description>" + document.getElementById("description").value + "</description>";
xml += "<leader>" + document.getElementById("leader").value + "</leader>";
xml += "<pre_money>" + document.getElementById("pre_money").value + "</pre_money>";
xml += "<now_money>" + document.getElementById("now_money").value + "</now_money>";
xml += "<endtime>" + document.getElementById("endtime").value + "</endtime>";
xml += "</cmessage>";
var length = document.getElementById("table").rows.length;
for (var i = 1; i <= length; i++) {
xml += "<Memmbers>" + document.getElementById("span" + i).innerHTML + "</Memmbers>";
}
xml += "</Sites>";
//向后台GetCtrlValue传参,参数就是上面收集数据的xml
var res = register.GetCtrlValue(xml);
document.getElementById("res").innerHTML = res;
return true;
}
但是AjaxPro会给我报错,全部错误如下
({"error":{"Message":"索引超出范围。必须为非负值并小于集合大小。\r\n参数名: index","Type":"System.ArgumentOutOfRangeException"}})
求救
------解决方案--------------------
xml的关键字符没有-这个字符,所以节点内存储2009-1-1这种格式的字符不会有问题。
感觉是你的project.AddNewproject(arryalistItem);这句代码导致出错。