DataGrid中传递两个参数方法

单击DataGrid后,在弹出页面中需要传入两个以上的值。找了好半天才找到方法。

例:在DataGrid中单击"详细"后在弹出页面中传入第一列和第二列的值。按正常的写法确怎么也传不进去。正常代码如下:

            strURL = "<a href='SysUserAdd.aspx?strHpUserID=" + grdDaiUser.Items[i].Cells[0].Text + "&strHpUserName="+grdDaiUser.Items[i].Cells[1].Text+">【详细】</a>";
            grdDaiUser.Items[i].Cells[grdDaiUser.Columns.Count 
- 1].Text = strURL;

 在运行时报错时,错误内容如下:

从客户端(strHpUserName="Admin>【详细】</a></td></tr><tr cl")中检测到有潜在危险的 Request.QueryString 值。

 仔细观察发现第二参数前多个引号("),便在第二个参数后加上了一个引号。测试成功。成功的代码如下:

            strURL = "<a href='SysUserAdd.aspx?strHpUserID=" + grdDaiUser.Items[i].Cells[0].Text + "&strHpUserName="+grdDaiUser.Items[i].Cells[1].Text+"'>【详细】</a>";
            grdDaiUser.Items[i].Cells[grdDaiUser.Columns.Count 
- 1].Text = strURL;

 注意黄色部分。

查一下网络说,在Web.config中加入下面代码

<pages   validateRequest="false"/>  //  对全局有效  

可以解决错误,但自己测试后,并不能带出第二个参数。但按照我的方法就可以带出第二个参数。

原文地址:https://www.cnblogs.com/scottckt/p/1323693.html