我做一个检测系统遇到的问题,我用gridview绑定了一个总表a的数据,需要实现点击gridview中某一行的“所属类别”列,就跳转到该行所属类别的网页。一共有5个网页类别,每个类别布局完全不同。
数据库:a表,a.id,是他唯一标识,标识着检测编号,a.所属类别,是表示该条数据所属于的类别,每个a.id标识对应一个相应的a.所属类别,而a.所属类别中有5种类别。当点击某行时,需要将a.id的值传给他相对应的类别的网页,并显示出详细记录。
然后还有5个具体类别的表,如b表表示空气湿度检测,b表中的id就是由a表传过来的a.id的值,c表表示岩石检测,依此类推。
我用hyperlinkfiled字段链接,但是只能转向一个网页类别。如何实现根据某行的a.id和a.所属类别的值来转到相应的类别的页面了?

解决方案 »

  1.   

    楼主问题没仔细看。给GridView增加一个Hyperlink,编辑这个字段。
    DataNavigateUrlFormatString:Details.aspx?id={0}&leibie={1}
    DataNavigateUrlFields:id,leibie这样子认定后,点击GridView上的Hyperlink字段时,就会把对应行id和leibie(类别)传到Details.aspx.传过去以后怎么处理是你的事啦。
    Details.aspx根据RequeryString["id"]和RequeryString["leibie"]值重定向也好,进行查询也好。
      

  2.   

    也就是说
    Details.aspx
    根据RequeryString["id"]和RequeryString["leibie"]值进行判断,如果是类别A就是转到那个页,同时把传过来的ID也一起传过去:
    string id = RequeryString["id"];
    string leibie = RequeryString["leibie"]
    switch(leibie)
    {
    case "类别A":
       Response.Redirect(类别A.aspx?id='" + id + '"&leibie='" + leibie + "'";
       break;
    ....
    }