PDA

View Full Version : بدست آوردن تعداد چک باکس های تیک خورده (خواهش میکنم کمک :: فوری)



aspismylove
شنبه 21 بهمن 1391, 12:19 عصر
سلام دوستان خخسته نباشید

من با کد زیر مقدار چک باکس های انتخاب شده رو بدست میارم و به کاربر نمایش میدم ...


protected void ChkSelect_CheckedChanged(object sender, EventArgs e)
{
int sum = int.Parse(lbltotalprice.Text);
string test = lblfieldselect.Text;
CheckBox chk = (CheckBox)sender;
if (chk != null && chk.Checked)
{
sum += int.Parse(chk.Attributes["RowIndex"].ToString());
}
else
{
sum -= int.Parse(chk.Attributes["RowIndex"].ToString());
}
lbltotalprice.Text = sum.ToString();



lblfieldselect.Text = "";
foreach (GridViewRow row in OrientationGrv.Rows)
{
CheckBox cb = (CheckBox)row.FindControl("ChkSelect");
if (cb != null && cb.Checked)
lblfieldselect.Text += OrientationGrv.DataKeys[row.RowIndex].Value.ToString() + "-";
}
lblfieldselect.Text = lblfieldselect.Text.TrimEnd('-');


حالا میخام کاربر اگر بیشتر از 3 تا رو انتخاب کرد بهش پیغام بدم ...

خواهش میکنم راهنمایی کینید :ناراحت::ناراحت::گریه::گریه:

taghi.km
شنبه 21 بهمن 1391, 15:35 عصر
یه شمارنده بذار تو اون قسمت هایی که چک شده افزایش بده دست آخر تستکن اگه بیشتر از سه بود پیغام بده

website.expert
یک شنبه 22 بهمن 1391, 17:37 عصر
سلام دستوراتت رو به این صورت تغییر بده،فکر کنم مشکلت حل بشه:
protected void ChkSelect_CheckedChanged(object sender, EventArgs e)
{
int sum = int.Parse(lbltotalprice.Text);
string test = lblfieldselect.Text;
CheckBox chk = (CheckBox)sender;
if (chk != null && chk.Checked)
{
sum += int.Parse(chk.Attributes["RowIndex"].ToString());
}
else
{
sum -= int.Parse(chk.Attributes["RowIndex"].ToString());
}

lblfieldselect.Text = "";
int count = 0;
foreach (GridViewRow row in OrientationGrv.Rows)
{
CheckBox cb = (CheckBox)row.FindControl("ChkSelect");
if (cb != null && cb.Checked)
{
count++;
if (count > 3)
{
chk.Checked = false;
sum -= int.Parse(chk.Attributes["RowIndex"].ToString());
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "clientScript", "alert('You can select only 3 items!')", true);
}
else
lblfieldselect.Text += OrientationGrv.DataKeys[row.RowIndex].Value.ToString() + "-";
}
}
lblfieldselect.Text = lblfieldselect.Text.TrimEnd('-');
lbltotalprice.Text = sum.ToString();
}