ajax.aspx怎么写的?
ccid参数应该是为SqlCommand or SqlAdapter的SQL提供参数吧?
SQL语句可以接受!isNaN()类型的数据吗?

解决方案 »

  1.   

    这个是ajax.aspx中的代码
    int type = Convert.ToInt32(Request.QueryString["type"].ToString());
    string ccid = Request.QueryString["ccid"].ToString();if(type == 1) //送审状态
    {
      SqlParameter[] prams = {
      db.MakeInParam("@ccid",SqlDbType.VarChar,20,ccid)  
    };
    db.RunProc("ccsq_sszt",prams);
    }
      

  2.   

    我在用断点测试时发现如果传的是字符串程序根本就不能进入到ajax.aspx。但如果传的是整型就没有问题
      

  3.   

    这个是存储过程
    ALTER PROCEDURE dbo.ccsq_sszt
    /*
    送审状态
    */
    @ccid varchar(20)AS
    UPDATE ta_ccsq SET sszt = 1,ssrq = getdate() WHERE ccid = @ccid
      

  4.   

    应该不是字符集的问题吧
    错误提示是说我要传的字符串未定义
    例如ccid = "adad";
    运行后提示就说“adad”未定义
      

  5.   

    既然是这样的报错信息那么有就可能是你引用这个值时出现了错误
    比如onclick="fun('<%=ccid%>')"
    如果你掉了中间的两上单引号会出现这样的问题。
      

  6.   

    试一下编码后传递值
    xlhttp.open("get","ajax.aspx?type=1&ccid="+encodeURIComponent(id));  
      

  7.   

    ccid 应该是个int,bigint类型的数据字段,建议捕获异常,参数为“abc”之类时会出错,这时,返回错误代号或者错误信息
    try
    {
    if(type == 1)//送审状态
    {
      SqlParameter[] prams = {
      db.MakeInParam("@ccid",SqlDbType.VarChar,20,ccid) 
    };
    db.RunProc("ccsq_sszt",prams);
    }
    }
    catch(Exception e)
    {
       Response.Write(e.ToString());
    }