当前位置:编程学习 > C#/ASP.NET >>

复选框问题

1、怎么判断哪个复选框被选中
2、购物信息中有个汇总的价格,就是第一个商品+第二个商品+第三个。。。。的总价,我想做的是比如我先前选中两个复选框,后来取消一个就剩一条商品信息,同时让汇总的价格发生变化,要怎么做? --------------------编程问答-------------------- if (checkBox1.Checked) ...

在CheckBox.CheckedChanged事件里面编写代码,重新计算总价。 --------------------编程问答--------------------
引用 1 楼 caozhy 的回复:
if (checkBox1.Checked) ...

在CheckBox.CheckedChanged事件里面编写代码,重新计算总价。

我的checkbox是这个形式的:  <ItemTemplate>
                                <asp:CheckBox ID="CBbuy" runat="server" AutoPostBack="True" Checked="True" 
                                     />
                            </ItemTemplate>,要怎么进行checkbox的判断? --------------------编程问答-------------------- 遍历dataview


foreach( DataGridViewRow row in dataView.Rows )
{
CheckBox chk = row.FindControl["CBbuy"] as CheckBox;
if(chk.Checked)
{
...//do something
}
}
--------------------编程问答-------------------- 还有没有人知道啊,我的那个复选框是在gridview里的,怎么判断是否选中,马上就要答辩了,求帮助啊! --------------------编程问答-------------------- 按钮事件里面 遍历gridview的checkbox 判断当前row的checkBox1.Checked是否被选中 --------------------编程问答--------------------
引用 5 楼 5653325 的回复:
按钮事件里面 遍历gridview的checkbox 判断当前row的checkBox1.Checked是否被选中

求具体代码 --------------------编程问答-------------------- public partial class Default46 : System.Web.UI.Page
{
    public static double huizong=0.0;

    protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        DataTable Cart = new DataTable();
        if (e.CommandName == "select")
        {
            if (Session["shop"] == null)//如果没有购物车数据的话
            {
                Cart.Columns.Add("编号", typeof(int));
                Cart.Columns.Add("名称", typeof(string));
                Cart.Columns.Add("规格", typeof(string));
                Cart.Columns.Add("单价", typeof(double));
                Cart.Columns.Add("数量", typeof(int));
                Cart.Columns.Add("总价", typeof(double));
                Cart.Columns.Add("汇总", typeof(double));
                Session["shop"] = Cart;//把购物车的虚拟表结构存储入session
            }

            Cart = (DataTable)Session["shop"];//从session中取出之前的购物数据

            int index = Convert.ToInt32(e.CommandArgument);//获取选择行的id号
            GridViewRow row = GridView1.Rows[index];//获取行
            int id = Convert.ToInt32(row.Cells[0].Text);//商品ID
            string name = row.Cells[1].Text;//商品名称
            string size = row.Cells[3].Text;//商品规格
            string p = row.Cells[4].Text;//
            double price = double.Parse(p);//商品单价
            int count = Convert.ToInt32(((TextBox)row.FindControl("TextBox1")).Text);//商品数量
            
            //添加一行购物数据
            DataRow rr = Cart.NewRow();//定义一个新行
            rr["编号"] = id;
            rr["名称"] = name;
            rr["规格"] = size;
            rr["单价"] = price;
            rr["数量"] = count;
            rr["总价"] = price * count;
            huizong += price * count;
            rr["汇总"] = huizong;
            Cart.Rows.Add(rr);//把这行购物数据添加到Cart中

            Session["shop"] = Cart;//重新存储到session中
        }
    }

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if (Request.Cookies["StudentCookies"] == null)
            {
                Response.Write("<script language=javascript>alert('请先登录!');location='Default3.aspx'</script>");
            }
            else if (!Page.IsPostBack)

                GridView1.DataSource = Session["shop"];
            DataBind();

        }
    }
    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

    protected void GridView1_SelectedIndexChanged1(object sender, EventArgs e)
    {

    }
}

这是我的代码,复选框的ID是CBbuy,到底怎么样才能实现选中几个复选框出现几个商品的汇总价格呢?汇总=第一个+第二个+。。。。 --------------------编程问答--------------------  foreach( GridViewRow row in GridView1.Rows )

         {
             CheckBox myCheck = (CheckBox)row.FindControl("ChbUpdateRight");
         } --------------------编程问答-------------------- public static string GetFormString(string strName)
{
         if (HttpContext.Current.Request.Form[strName] == null)
         {
                 return "";
         }
         return HttpContext.Current.Request.Form[strName];
}
         SRequest.GetFormString("asd"); --------------------编程问答-------------------- 不就是个前台变化吗,用jquery控制,最后操作完毕,统一提交 --------------------编程问答-------------------- 全部前端jq操作的 --------------------编程问答--------------------
引用 楼主 u010890621 的回复:
1、怎么判断哪个复选框被选中
2、购物信息中有个汇总的价格,就是第一个商品+第二个商品+第三个。。。。的总价,我想做的是比如我先前选中两个复选框,后来取消一个就剩一条商品信息,同时让汇总的价格发生变化,要怎么做?

 //删除按钮事件
    protected void btnDelete_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < this.GridView1.Rows.Count; i++)
        {
          CheckBox cb = (this.GridView1.Rows[i].FindControl("chkSelect")) as CheckBox;//获取复选框
            int id=Int32.Parse(this.GridView1.DataKeys[i].Value.ToString());
            if (cb.Checked)
            {
                m_customerBLL.DeleteModel(id);
            }
        }
        BindCustomer();
    }


我这个是删除的 你可以参考着改一下你自己的 --------------------编程问答-------------------- 在前端通过jquery应该不难实现!
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,