span innertext甚至不在同一页面中分配

时间:2012-10-19 20:46:40

标签: asp.net session listview html

实际上,我必须访问税收&下面给出的购物车表中的总数,然后通过将这些值分配给它们的innertext,将它们分配到aspx页面中的span,

我使用断点和&淹没了我的代码,但问题太复杂了...... - >我看到通过在bindtotal()方法中调试鼠标而正确显示innertext(指定文本),但是这个文本没有显示在.aspx页面上,我的意思是aspx页面上的span文本即使被分配,仍然是空的。为什么??????

的.aspx

<b>subtotal:</b>
<span id="span_subtotal" runat="server"></span>                         
<br/>
<b>Total:</b>                           
<span id="span_granttotal" runat="server"></span>

的.cs

这些跨度的innertext r sitll空运行以下代码............任何人都可以帮我解决这个问题????????

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {            
        if (Session["cart_table"] == null)
        {
            DataTable dt = new Spcart().GetCart();
            Session["cart_table"] = dt;                  
        }
        BindCartListView();            
    }
}

public void bindtotal(int tax, int total)
{
    int ptax = 0;
    ptax = ptax + tax;

    int subtotal = 0;
    subtotal = subtotal + total;

    int granttotal = 0;
    granttotal = granttotal + ptax +subtotal;

    ///////////setting innertext///////////////////////

    span_subtotal.InnerText = subtotal.ToString();
    span_granttotal.InnerText = granttotal.ToString();
}

public void BindCartListView()
{                        
    DataTable producttable = new BALCate().GetProductDeatils(int.Parse(Request.QueryString["pid"].ToString()));
    DataTable carttable = (DataTable)Session["cart_table"];
    DataRow cartrow;
    DataRow productrow;

        cartrow = carttable.NewRow();
        productrow = producttable.Rows[0];
        cartrow["Pid"] = productrow["pid"];
        cartrow["PImage"] = productrow["pimg_mid1"];
        cartrow["Pprice"] = productrow["pcost"];
        cartrow["Pqty"] = int.Parse(Request.QueryString["qty"].ToString());                
        cartrow["Pname"] = productrow["pname"];
        cartrow["ptax"] = productrow["ptax"];
        cartrow["Total"] = int.Parse(productrow["pcost"].ToString()) * int.Parse(cartrow["Pqty"].ToString());  

        carttable.Rows.Add(cartrow);        

        int tax=int.Parse(cartrow["Ptax"].ToString());
        int total = int.Parse(cartrow["Total"].ToString());
        bindtotal(tax, total);        

 ListView_Cart.DataSource = carttable;
 ListView_Cart.DataBind();
 Response.Redirect("ShoppingCart.aspx");
}

1 个答案:

答案 0 :(得分:1)

可能是您在Response.Redirect("ShoppingCart.aspx");方法结束时执行了BindCartListView()

我不知道您发布的代码在哪个页面中,但您可以将值保存在Session中,或将它们作为查询字符串发送,并将其设置在 ShoppingCart中。 aspx 代码背后。

QueryString伪代码:

Response.Redirect("ShoppingCart.aspx?subtotal=" + subtotal + "&granttotal=" + granttotal);
伪代码背后的

ShoppingCart.aspx.cs 代码:

// Provided you have these span elements in ShoppingCart.aspx.
span_subtotal.InnerText = Request.QueryString["subtotal"];
span_granttotal.InnerText = Request.QueryString["granttotal"];