这样的提交确定功能是否可以做到
处理流程是protected void Button1_Click(object sender, EventArgs e)
{
string name ="zhankk"
//首先到到数据库查找我添加的数据的名称是否在数据库已经存在
//如果存在就弹出一个对话框 ,“已经存在存在同名的数据,是否还需要添加??”
// 如果点击是 ,那么就将数据插入到数据库中,如果点否,就不操作,
这样是否有办法去实现 ,
谢谢
} --------------------编程问答-------------------- 你是添加什么啊,数据库?表?记录? --------------------编程问答-------------------- if()
{}
else
{} --------------------编程问答-------------------- LZ的描述已经很清楚了。实现这个似乎很简单的效果其实还要费点功夫。
建议使用Wizard控件。 --------------------编程问答--------------------
--------------------编程问答-------------------- select count(*) as result where 用户表 where username=@username
if (dr1.Read())
{
//数据库中已经存在存在同名的数据
}
else
{
Page.RegisterStartupScript(" ", "<script>if (confirm('还没有,要添加吗?')){self.location.href='./Plan_Add.aspx';}</script>");
}
得到返回的值如果是0就插入新用户,如果为1则提示用户已经存在
if(result==0)
{
//insert sql
}
else
{
respone.write("user exists")
}
--------------------编程问答-------------------- 除了3楼,其它都胡诌!
其实象3楼说的那样,问题简直,但实现起来很点难.
象这样服务端运行起来,突然冒出运行客户端脚本,又要返回,这样的需求很难实现.
建议用弹层,实现而不是对话框. --------------------编程问答-------------------- 定义查询字符串 string sql = "select Count(*) from [Table] where 字段名 = '"+txtbox.text.trim(0.tostring()+"'" ;
SqlCommend cn = new ...(sql) ; //这点记不得了 等我想起来再给你写上
if( int.parse(cn.Excutesaler().tostring() )==0 )//返回查询数据 如果=0 注册成功 否则失败 因为数量大于0
{
Response.Wrirte("<script language = "Javascript"> alter('注册成功!') ;</script>") ;
}
else
{
Response.Wrirte("<script language = "Javascript"> alter('注册失败@有重名!!') ;</script>") ;
}
--------------------编程问答-------------------- LikeCode
言之有理 ,我目前也是这么做的
其他的好像都把我当菜鸟弄啊:) 悲哀,回帖是好事情,先谢谢了,回答的没有建设意义的话,还不用不回,我看,我还是自己想办法解决了
--------------------编程问答-------------------- 在后台里面好像没有这样的操作。需要直接有返回值的。
建议用框架或者弹窗做。 --------------------编程问答-------------------- showModalDialog有返回值的,但这个不太好看,建议用层,外加一个宽高都是0的iframe,点是,就隐藏层,点否就执行下iframe里的src,再隐藏层,应该可行。 --------------------编程问答-------------------- protected void Button1_Click(object sender, EventArgs e)
{
int count = IsHaveExsitsRecord();
if (count != 0) //存在相同数据
{
//是否是在这里调用弹出的层呢,在div中有按钮yes ,or no 按钮
//那么我怎么在点击是以后,继续执行后面的插入操作呢
insertData();//这样写对吗
}
} --------------------编程问答-------------------- 问题我有的不明白,我要弹出层出来,势必要在这个方法里面执行一段js script,但是发现,在服务器button是先提交服务器,在执行js吧,所以造成不关你点是,还是否,对执行下面的语句都市没有效果的
protected void Button1_Click(object sender, EventArgs e)
{
int count = IsHaveExsitsRecord();
if (count != 0) //存在相同数据
{
//是否是在这里调用弹出的层呢,在div中有按钮yes ,or no 按钮
//那么我怎么在点击是以后,继续执行后面的插入操作呢
insertData();//这样写对吗
}
} --------------------编程问答-------------------- xmlhttp异步提交了,只有这样才能执行服务端代码。 --------------------编程问答-------------------- 如果你要保存页面状态的话,只能才用 xmlhttp异步提交.
如果不需要保存页面状态的话,如下:
protected void Page_Load(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(Request["Add"]) && Request["Add"]=="true")
this.Response.Write("<script>alert('Add')</script>");
}
protected void Button1_Click(object sender, EventArgs e)
{
string str=this.TextBox1.Text;
//是否为空 or null
if (string.IsNullOrEmpty(str))
{
}
else
{
//当前页为 Default.aspx
this.Response.Write("<script>if (confirm('已存在是否继续添加?')){window.location.href='Default.aspx?Add=true';} </script>");
}
}
--------------------编程问答-------------------- 把 this.Response.Write("<script>alert('Add')</script>");
换成你要做的操作就可以了
--------------------编程问答-------------------- 我觉得得用ajax --------------------编程问答-------------------- 实现这样的问题 确实有点难
以前我们也遇到这样的问题 后来采用ajax实现了
但是 这样要调用两次方法 而且方法提示要在方法体外 也就是 在脚本调用的时候看它的返回值 再进行二次调用
并且这样的 处理有个缺点 就是如果是多业务逻辑的话 那么要确保前边的业务逻辑不能重复执行 --------------------编程问答-------------------- 不懂 --------------------编程问答-------------------- LZ 问题解决了? --------------------编程问答-------------------- 问题没有解决
补充:.NET技术 , ASP.NET