代码如下:
string[] result = contract.insertIntoHiredTable(table1,table2,Fare);
string output =result[1]//exception的messger信息
if(result[0]=="true")
{
Response.Write("<script language=javascript>");
Response.Write("window.alert('");
Response.Write("合同信息保存成功");
Response.Write("');");
Response.Write("</script>");
Response.Redirect("AddContractWizard.aspx");
}
else
{
Response.Write("<script language=javascript>");
Response.Write("window.alert('");
Response.Write(output);
Response.Write("');");
Response.Write("</script>");
}
为什么我保存成功时,会有提示信息,而保存失败时候,没有提示信息,IE debug显示缺少')'

解决方案 »

  1.   

    你的语法是正确的,是因为错误信息中有的符号出错。你可以替换一下。
    string output =result[1].Replace("\r","").Replace("'","'+unescape('%27')+'").Replace("\n","'+unescape('%0A')+'").Replace("\\","/");
      

  2.   

    你可以调试一下,看看output究竟输出了什么?有什么特殊字符,然后再替代.
      

  3.   

    因为你output变量中有非法字符,例如',你可以replace掉,比如'换成''
      

  4.   

    "'+unescape('%0A')+'" 什么意思?
      

  5.   

    呵.解决了就好.我的意思是你可以在Response.Write(output);设个断点,看看他到底是什么东东,就可以有针对性的replace了啊.