日期:2014-05-16  浏览次数:20473 次

为什么xmlHttp.responseText为<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona

function valInput(action){
var tb=$f("newName");
var strName=tb.value;
if(strName!=null)
{
       if(strName.replace(/(^\s*)|(\s*$)/g, "")=="" || strName.length>50){alert("输入无效!请重新输入,并限制在50字内。");tb.focus();return false;
}
else{
createXMLHttpRequest();
var url;
switch (action){
    case "addUser":
    url = "EditOrg.aspx?action=addUser&pid=" + pid + "&name=" + encodeUrl(strName);
xmlHttp.onreadystatechange = callback_addUser;
break;
case "addUnit":
url = "EditOrg.aspx?action=addUnit&pid="+pid+"&name=" + encodeUrl(strName);
xmlHttp.onreadystatechange = callback_addUnit;
break;
case "CloneUser":
url = "EditOrg.aspx?action=CloneUser&id="+getNumericID()+"&pid="+pid+"&newname=" + encodeUrl(strName);
xmlHttp.onreadystatechange = callback_addUser;
break;
default:
return false;
}
xmlHttp.open("GET", url, true);
xmlHttp.send(null);
// xmlHttp.end();
}


function callback_addUnit(){
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
try {
var result=xmlHttp.responseText;//这里测试发现:result=<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">而不是我新建用户的用户名
var resultArr=result.split("_");
switch (resultArr[0]){
case "1":
var NodeTxt=result.substr(2);
NodeTxt=NodeTxt.substr(NodeTxt.indexOf("_")+1);
var link=$f("newName").parentNode.getElementsByTagName("a")[0];
link.href="unit.aspx?id="+resultArr[1]+"&NodeTxt="+encodeUrl(NodeTxt);
link.setAttribute("id","Unit_" + resultArr[1]);
link.getElementsByTagName("span")[0].oncontextmenu=new Function("return unitmenu('Unit_"+resultArr[1]+"','"+NodeTxt+"');");
$f("newName").outerHTML="<span class='nodetxt'>"+NodeTxt+"</span>";
parent.parent.lframe.tv_reload();
break;
case "2":
$f("newName").outerHTML="<span class='nodetxt'>"+resultArr[1]+"</span>";
parent.parent.lframe.tv_reload();
break;
default:
if (result=="0"){alert("操作失败!");var pNode=$f("newName").parentNode;pNode.parentNode.removeChild(pNode);}
else{alert(result);$f("newName").focus();}
}
} catch (e){}
}
}
------解决方案--------------------
你应该看EditOrg.aspx .cs文件中返回值是怎么处理的