注册 登录
编程论坛 ASP.NET技术论坛

[求助]投票问题

lmyh5201 发布于 2007-05-16 17:04, 833 次点击
我有3个radiobutton,分别为r1,r2,r3,当我点击r1时,让lable1.text里的数字加1;电击r2时,让lable2.text里的数字加1;电击r3时,让lable3.text里的数字加1怎么实现呀
10 回复
#2
ahuinan2007-05-16 18:42

不知道这是不是你要的效果

[URL=http://www.54geek.com/myaspx/1/default.aspx]http://www.54geek.com/myaspx/1/default.aspx[/URL]

关键部分的代码如下;

程序代码:

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.IsPostBack)
        {
            Application[\"i\"] = 0;
            Application[\"j\"] = 0;
            Application[\"k\"] = 0;
        }
    }



    protected void r1_CheckedChanged(object sender, EventArgs e)
    {


        Application[\"i\"] = Convert.ToInt32(Application[\"i\"]) + 1;
        this.Label1.Text = Application[\"i\"].ToString();


    }
    protected void r2_CheckedChanged(object sender, EventArgs e)
    {
        Application[\"j\"] = Convert.ToInt32(Application[\"j\"]) + 1;
        this.Label2.Text = Application[\"j\"].ToString();
    }
    protected void r3_CheckedChanged(object sender, EventArgs e)
    {


        Application[\"k\"] = Convert.ToInt32(Application[\"k\"]) + 1;
        this.Label3.Text = Application[\"k\"].ToString();
    }
}

#3
ahuinan2007-05-16 18:43

不知道这是不是你要的效果

[URL=http://www.54geek.com/myaspx/1/default.aspx]http://www.54geek.com/myaspx/1/default.aspx[/URL]

关键部分的代码如下;

程序代码:

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.IsPostBack)
        {
            Application[\"i\"] = 0;
            Application[\"j\"] = 0;
            Application[\"k\"] = 0;
        }
    }



    protected void r1_CheckedChanged(object sender, EventArgs e)
    {


        Application[\"i\"] = Convert.ToInt32(Application[\"i\"]) + 1;
        this.Label1.Text = Application[\"i\"].ToString();


    }
    protected void r2_CheckedChanged(object sender, EventArgs e)
    {
        Application[\"j\"] = Convert.ToInt32(Application[\"j\"]) + 1;
        this.Label2.Text = Application[\"j\"].ToString();
    }
    protected void r3_CheckedChanged(object sender, EventArgs e)
    {


        Application[\"k\"] = Convert.ToInt32(Application[\"k\"]) + 1;
        this.Label3.Text = Application[\"k\"].ToString();
    }
}

#4
tel19822007-05-17 07:28

你要的是楼上的这种效果吗??

#5
lmyh52012007-05-17 15:23

我的lable1.text里的内容是从数据库查出来,并把它副给了lable1.text,其他的LABLE也是这样的

#6
lmyh52012007-05-17 15:31
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

#7
lmyh52012007-05-17 15:31
这是界面,你看看怎么实现
#8
sldtk12007-05-18 01:02
给个思路,当提交某一项后,数据库里对应的项加1,然后将结果显示出来
#9
lmyh52012007-05-18 10:47

对,就是那样,怎么实现呀

#10
sldtk12007-05-18 14:34
在Button的单击事件中写上
for(int i=0;i<this.RadioButtonList.Items.Count;i++)
{
if(this.RadioButtonList.Items[i].Selected)
{
/*以下是更新数据库,省略,因为比较麻烦,首先你的数据库的表要定义好主键和外键,这样用的时候才能关联上,最
好是把投票的内容和投票计数分开建表.完成后就是Update的问题了*/
}
}
至于显示票数,你可以这样做
SqlCommand cmd=new Sqlcommand("Select * from XXX where XXX=XXX",connectionname);//选择相应计数表
SqlDataReader sdr=new SqlDataReader();
sdr=cmd.ExecuteReader(); //取出表中的数据
label.Text=sdr.Tostring(); //显示结果
具体的语法不太记得了,也没验证,可能有较多错误,不过希望对你有帮助
如果你要用的RadioButton控件,可以这样
if(RadioButton1.Selected)
{
//更新相应数据库
}
同理RadioButton2,3.....
统计投票数方法同上,不过到底是.Selected还是.Checked(CheckBox?)呢
#11
lmyh52012007-05-18 15:46
你的不行我试了,但还是谢谢你
1