confirm的问题,谁能解决,100分相送!

tianlei521 2006-03-30 07:58:25
我的程序是,当向数据库中插入记录是,如果数据库中有这条记录了(有唯一标示)。就弹出javascript的confirm提示框,询问用户是否更新数据库中的记录,如果用户选择是就更新,如果选择否就不更新,退回到前一个页面,保留原记录,该怎么实现?我现在的程序是这样的。
....
....
....
String sql="";
if(rs.next())
{
out.println("<script language=\"javascript\">");
out.println("if(confirm(\"记录存在,是否更新?\")==false");
out.println("window.hiostory.go(-1);");
sql="update table ... ...";
}
else
{
sql="insert into table values(....)"
}
可是不管用户选择是还是选择否,都会更新记录啊,请贴出代码。
...全文
118 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lydvqq 2006-03-30
  • 打赏
  • 举报
回复
因为要重新执行JSP,必须提交到服务器才能执行.
但如果只是要SQL传到另一个页面去处理就改为:
<script>
function kk(){
if(confirm('update£¿')==false){
var sql = 'update table ... ...';
}else{
var sql = 'insert table ... ...';
}
alert(sql);
}
</script>
lydvqq 2006-03-30
  • 打赏
  • 举报
回复
<%@ page contentType="text/html;charset=gbk" language="java"%>
<html>
<body>
kdkdkdk
<script>
function kk(){
alert("kk");
if(confirm('update£¿')==false){
window.location.href='tt.jsp?op=insert';
}else{
window.location.href='tt.jsp?op=update';
}
}
</script>
<%
String op = request.getParameter("op");
if(op==null)op="";
String sql="ggg";
if( 1==1&&(! op.equals("insert")) ){
out.println("if:"+sql);
%>

<script>
kk();
</script>

<%
sql="update table ... ...";
}else{
out.println("else"+sql);
sql="insert into table values(....)";
}
out.println("end:"+sql);
%>
</body>
</html>
Timsole 2006-03-30
  • 打赏
  • 举报
回复
echomyf(ECHO) 正解 如果你要这么写的话
lydvqq 2006-03-30
  • 打赏
  • 举报
回复
如果是要更新记录的话,就要重新提交一次给本页面,增加个参数.因为JSP是服务器产生的语句.JS是客户端的.
fuwang 2006-03-30
  • 打赏
  • 举报
回复
这段代码逻辑非常混乱,最好用MVC模式做
图门的世界 2006-03-30
  • 打赏
  • 举报
回复
String sql="";
if(rs.next())
{
out.println("<script language=\"javascript\">");
out.println("if(confirm(\"记录存在,是否更新?\")==false){");
out.println("window.hiostory.go(-1);}");
out.println("else{...}");//这里做提交后台的操作
// 这里应该直接return
// sql="update table ... ...";
}
else
{
sql="insert into table values(....)"
}
图门的世界 2006-03-30
  • 打赏
  • 举报
回复
我觉得你的处理不应该这样写吧
如果"如果数据库中有这条记录了",就是你上边那部分代码,不过呢,你的更新表的那个操作就不能要了,然后如果点确定,再提交后台做更新.也就是把这个动作分两次做.

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧