日期:2014-05-17  浏览次数:20926 次

C# 判断条件后 操作语句求助
int i = 0;
        foreach (ListItem item in CheckBoxList1.Items)
        {
            if (item.Selected == true)
            {
                i++;
            }
        }
        if (i != 3)
        {
            Response.Write("<Script Language=JavaScript>alert(\"请选择至少3个")</Script>");
            (这里想要跳出,并不继续往下执行页面另外的程序。)
        }

尝试用return; 或者 break; 都会继续执行循环体外的程序,我想停止整个页面的操作,然后返回到这个页面。

------解决方案--------------------
return只能结束当前函数,不会阻止后面函数运行,除非你加个参数,后面的函数都判断这个参数,从而决定是否执行
------解决方案--------------------
bool result = false;
int i = 0;
foreach (ListItem item in CheckBoxList1.Items)
{
     if (item.Selected == true)
     {
          i++;
     }
}
if (result)
{
     if (i != 3)
     {
             Response.Write("<Script Language=JavaScript>alert(\"请选择至少3个")</Script>");
          result = true; break;
      }
}
 
------解决方案--------------------
加一个页面内部bool类型参数
跳出时给他赋false
后边全部判断这个页面内部参数为true执行就OK
------解决方案--------------------
Response.Write会打乱页面布局,使用
ClientScript.RegisterStartupScript(this.GetType(),"alert","<script>alert('保存成功');</script>");
return;

------解决方案--------------------
用goto怎么样
------解决方案--------------------

     if (item.Selected)
      {
           i++;
      }

用个全局变量,bool或者其他的来check是否退出