日期:2014-05-20  浏览次数:20883 次

关于datalist传值问题
本人在做网页传值的时候出现了问题,在产品页面用datalist绑定数据库中的product项,如下图:
源代码加入如下传值:
                                    <asp:Image ID="Image1" runat="server" Height="107px"
                                     ImageUrl='<%#DataBinder.Eval(Container.DataItem,"url") %>'
                                     Width="130px" />
                                </td>
                            </tr>
                            <tr>
                                <td>
                      <a href='44.aspx?pname=<%# DataBinder.Eval(Container.DataItem,"pname") %>' style="font-size: 12pt; text-decoration:none">
                <%# DataBinder.Eval(Container.DataItem,"pname") %></a>


转到产品的详细页面后,发现有的能传到值,大部分的不行,如下2图:


而此页主要代码如下:

        if (!IsPostBack)
        {
            string idStr =Request.Params["pname"].ToString();
            SqlConnection sqlconn = sqlCon.getCon();
            sqlconn.Open();
            string sqlstrbind = "select * from product where pname='" + idStr + "'";
            SqlCommand sqlcom = new SqlCommand(sqlstrbind, sqlconn);
            SqlDataReader sdr = sqlcom.ExecuteReader();
            if (sdr.Read())
            {
                TextBox1.Text = sdr["details"].ToString();
                Label4.Text = sdr["pname"].ToString();
                Image1.ImageUrl = sdr["url"].ToString();
            }
            sdr.Close();