验证两个TextBox为空的 问题!!!!!!!!
现在要做一个图书的查询 有下列几种查询条件:
书名,作者,出版社,日期(起始日期,截止日期)
也可以联合查询也可以单独查询.
别的都做出来了把SQL语句连接起来就可以.
现在问题是比如 用户输入了起始日期 不输入截止日期的话SQL语句就会出错!
想得到的效果是 输入了起始日期 就必须输入截止日期. 或者输入了截止日期就必须
输入起始日期.这样的一个需求.就是不知道怎么验证了!
我暂时是这么写的 但是这么写的话如果起始和截止日期都填写上了 就一直提示输入
起始日期了!(是个笨办法)
---------------------
if (!txtDate1.Text.Equals( " "))
{
Label1.Text = "请输入截止日期! ";
}
if (!txtDate2.Text.Equals( " "))
{
Label1.Text = "请输起始止日期! ";
}
if(txtDate2.Text.Equals( " ") && txtDate1.Text.Equals( " "))
{
Response.Redirect( "findbook.aspx?name= " + this.txtBname.Text + "&Author= " + this.txtAuthor.Text + "&cbs= " + this.txtCbs.Text + "&date1= " + this.txtDate1.Text + "&date2= " + this.txtDate2.Text + " ");
}
-------------------
都给我 "绕 "晕 了
没什么开发经验.
大家帮帮忙 谢谢了
本人有些菜.大家多多指教.
当然 如果有更好的方法 希望大家告诉我.比如只输入起始日期的情况下 直接查询出来起始日期以后的 所有图书.
------解决方案--------------------问题可以这样解决:当输入起始日期而不输入截至日期时,查询的是起始日期之后的数据;当不输入起始日期只输入截至日期时,查询的是截至日期之前的数据.
在sql里面的解决方法
create proc sps_getdate
@startdate datetime,
@enddate datetime,
……--其他查询参数
as
select * from [table] where
(@startdate < bookdate or @startdate is null) and
(@enddate > bookdate or @enddate is null) and
…… --其他参数判断
在程序里面如果查询条件没有输入的话,那就将查询字段的值设置为空就可以一次实现多条件查询了。