标题:请看看这个IF语句有什么问题
只看楼主
ld999
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2007-4-11
 问题点数:0 回复次数:10 
请看看这个IF语句有什么问题

我在"保存修改"按钮中用了以下IF语句,作用是先判断两个文本框是不是为空,如果不空的话,就保存.现在是保存没有问题,只是当两个文本框为空时,判断失效.
以下是代码:
if (this.textBox2.Text == "")
{
MessageBox.Show("用户名称不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.textBox2.Focus();
}
else
{
if (this.textBox4.Text == "")
{
MessageBox.Show("水表名称不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.textBox2.Focus();
}
else
{
mybase.getcom("update sbxx set dwmc='" + this.textBox2.Text.Trim() + "',sbmc='" + this.textBox4.Text.Trim()
+ "',yhlx='" + this.comboBox2.Text.Trim() + "',sblx='" + this.comboBox1.Text.Trim()
+ "',Phone='" + this.textBox3.Text.Trim() + "',dizhi='" + this.textBox5.Text.Trim()
+ "',zzs='" + this.comboBox3.Text.Trim() + "' where dwbh = '" + this.textBox1.Text.Trim() + "' and sbbh='" + this.textBox6.Text.Trim() + "'");
this.button1_Click(sender, e);
MessageBox.Show("水表用户信息修改成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}

搜索更多相关主题的帖子: IF语句 文本 Information else 
2007-10-23 11:25
jacklee
Rank: 7Rank: 7Rank: 7
来 自:XAplus
等 级:贵宾
威 望:32
帖 子:1769
专家分:104
注 册:2006-11-3
得分:0 
string t1,t2;

if(t1!="" && t2!="")
save();

你的条件冲突,,两个为空失败,两个不为空保存。如果其中一个为空一个不为空呢?两个条件都不成立时你怎么处理?

XAplus!
讨论群:51090447
删吧删吧,把我的号给删了!
2007-10-23 11:52
jacklee
Rank: 7Rank: 7Rank: 7
来 自:XAplus
等 级:贵宾
威 望:32
帖 子:1769
专家分:104
注 册:2006-11-3
得分:0 
上面代码没看。只看过思路。

XAplus!
讨论群:51090447
删吧删吧,把我的号给删了!
2007-10-23 11:53
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 

if (this.textBox2.Text.Trim() == "")
{
MessageBox.Show("用户名称不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.textBox2.Focus();
return;
}
if (this.textBox4.Text.Trim() == "")
{
MessageBox.Show("水表名称不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.textBox4.Focus();
return;
}
mybase.getcom("update sbxx set dwmc='" + this.textBox2.Text.Trim() + "',sbmc='" + this.textBox4.Text.Trim()
+ "',yhlx='" + this.comboBox2.Text.Trim() + "',sblx='" + this.comboBox1.Text.Trim()
+ "',Phone='" + this.textBox3.Text.Trim() + "',dizhi='" + this.textBox5.Text.Trim()
+ "',zzs='" + this.comboBox3.Text.Trim() + "' where dwbh = '" + this.textBox1.Text.Trim() + "' and sbbh='" + this.textBox6.Text.Trim() + "'");
this.button1_Click(sender, e);
MessageBox.Show("水表用户信息修改成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);


飘过~~
2007-10-23 12:41
飙马
Rank: 5Rank: 5
来 自:马里亚纳
等 级:贵宾
威 望:15
帖 子:779
专家分:280
注 册:2007-3-28
得分:0 
是你的嵌套错了,
if ( )
{
}
else
{
if ()
{

}
else
{
'提交数据库
}
………………………………

你看看你最后的else匹配是哪个if?是最后一个,但是它实际上应该是与为空的所有条件同等的,也就是你的第一个if

IT精英如同彩票:平凡的人像5块也中不到一样普遍,努力一点你中了5元保了个本。奖金越高,机率也就越小,付出的也越多,盖茨如同500万一样稀有。虽然每天忙碌而平凡,但我努力成为精英,做梦中了500万。
2007-10-23 12:44
zhangyg_cn
Rank: 1
等 级:新手上路
帖 子:50
专家分:0
注 册:2007-10-22
得分:0 
欠套一般情况下最好不要超过3层

删蒢┈记亿﹎ 镏下啲х`祗惿噎份 ┊ ☆ 曾经啲◇ˋ美恏徊亿`ヽ
2007-10-23 14:35
ld999
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2007-4-11
得分:0 

欠套一般不超过3层,那如果需要多种情况判断的时候,应该用什么语句呢.
以前用VFP时,使用 case语句很明晰,现在不知道在C#用什么语句进行多情况判断.请指教.

2007-10-26 10:58
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 

我的方法不行吗??
我不就没有用嵌套吗


飘过~~
2007-10-26 11:21
zhjesse
Rank: 1
来 自:西藏拉萨
等 级:新手上路
帖 子:205
专家分:0
注 册:2007-4-3
得分:0 
赞同bygg版主的方法

执行效率高

想了解西藏的天葬文化、藏北比如骷髅墙吗?[url=http://www.]【雪域藏北论坛】[/url]给你诠释!
2007-10-26 12:30
ld999
Rank: 1
等 级:新手上路
帖 子:147
专家分:0
注 册:2007-4-11
得分:0 
试了,是可行的,谢谢bygg,只是我想也问一下其它的方法.
2007-10-26 16:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-180030-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.335289 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved