请教高手.....弹一个提示框询问是否进行修改操作,如果选择"OK"则修改数据,反之则不进行操作.

LoveInChongQing 2008-04-25 05:27:23
Protected Sub BTN_ENT_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BTN_ENT.Click
Dim abc As String
If chkEXITQIFENG() = 0 Then '判断该记录是否存在
INSERT_CONTRACT() '不存在时添加记录
Else
'数据存在时,则提示一个消息框询问是否进行修改
xmlObject = New XmlReader("../Xml/MSGList.xml")
Response.Write("<script Language=""JavaScript"">")
Response.Write("if (confirm('" & xmlObject.GetXmlNodeValue("MSGList", "MSG", "M200013") & "')) { ")
Response.Write(bb = 11)
Response.Write(" } else {")
Response.Write(bb = 12)
Response.Write("}")
Response.Write("</script>")
'判断从提示框中选择的值
If bb= 11 Then
UPDATA_CONTRACT() '修改数据
End If

要执行的功能是:点了"更新"按钮后,先判断该记录是否存在,如果不存在则添加该记录,
如果已经存在,在弹一个提示框询问是否进行修改操作,如果选择"OK"则修改数据,反之则不进行操作.

可是这样写的话,就顺序执行了所有的语句,但是也没有弹提示框.
...全文
165 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
财富实验室 2008-04-28
  • 打赏
  • 举报
回复
if (confirm("数据已经存在,需要修改吗?"))
{
// 跳转到修改页面
window.location = "modify.aspx?id=" + myid;
}
else
{
// 跳转到增加页面
window.location = "add.aspx";
}
LoveInChongQing 2008-04-28
  • 打赏
  • 举报
回复
这个问题已经困扰我好久了.
主要是并不是点击按钮就弹提示框,是在中间满足条件时才弹出来.
要是能通过自动的触发一个隐藏的按钮,再在那个按钮中去弹提示框,并进行操作.
可现在关键的问题又是怎么样自动触发另外一个按钮??

我做的WEB程序,ASP.NET/VB.NET
pzbpengzhibin 2008-04-28
  • 打赏
  • 举报
回复
Dim i As Integer
i = MsgBox("更新?", MsgBoxStyle.OkCancel)
If i = vbCancel Then
'结束操作
Return
End If

'更新操作
MsgBox("开始更新")
LoveInChongQing 2008-04-28
  • 打赏
  • 举报
回复
非常感谢楼上的回复!

可是当通过IIS来访问时,不能启动MsgBox.


能否通过alert,confirm等脚本函数来实现.
yiyaoyao58958 2008-04-28
  • 打赏
  • 举报
回复
另:
先去判断有没有纪录
如果没有:追加
如果有:添加上述代码
yiyaoyao58958 2008-04-28
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yiyaoyao58958 的回复:]
VB.NET code
Dim i As Integer
i = MsgBox("更新?", MsgBoxStyle.OkCancel)
If i = vbCancel Then
'结束操作
Return
End If

'更新操作
MsgBox("开始更新")
[/Quote]

把这个代码插在实际更新操作之前,判断已经有了纪录之后
yiyaoyao58958 2008-04-28
  • 打赏
  • 举报
回复

Dim i As Integer
i = MsgBox("更新?", MsgBoxStyle.OkCancel)
If i = vbCancel Then
'结束操作
Return
End If

'更新操作
MsgBox("开始更新")

LoveInChongQing 2008-04-28
  • 打赏
  • 举报
回复
在VB中可以通过以下方式来实现:
imports system.windows.Forms

........
'自动触发按钮事件
InvokeOnClick(button,null)


可是在VB.NET中没有这个命名空间及方法.

也不能通过直接调用来实现,因为要在触发的按钮同时弹提示框,然后进行其他操作.
有高手知道的请指教.
CloneCenter 2008-04-26
  • 打赏
  • 举报
回复
Web上面处理这个问题的思路和Windows下的应用程序是不同的,建议你用javascript实现。
在用户输入了数据的关键字之后(例如,编号等),回发到服务器(或者使用ajax/javascript脚本)判断数据是否存在,如果存在给出提示,通过用户confirm之后的不同结果,跳转到不同的页面。

if (confirm("数据已经存在,需要修改吗?"))
{
// 跳转到修改页面
window.location = "modify.aspx?id=" + myid;
}
else
{
// 跳转到增加页面
window.location = "add.aspx";
}
gui0605 2008-04-25
  • 打赏
  • 举报
回复
confirm方法不是可以的吗?你都用了的
懒牛科技 2008-04-25
  • 打赏
  • 举报
回复
if (this.hideForMail.Value == "NO")
{
if ((bool)ViewState["ISHASBEENSEND"])
{
CommonBLL.msgBox("<script language='javascript'>if(confirm('this booking has been sent to carrier ! send again?')){document.getElementById('hideForMail').value='YES';document.getElementById('BtnMailTo').click();}</script>", this);

// return;
}
else
{

}
}

if (this.hideForMail.Value == "YES")
{

}
懒牛科技 2008-04-25
  • 打赏
  • 举报
回复
弄个隐藏的按钮,用于状态标识!

if (this.hideForMail.Value == "NO")
{
if ((bool)ViewState["ISHASBEENSEND"])
{
CommonBLL.msgBox("<script language='javascript'>if(confirm('this booking has been sent to carrier ! send again?')){document.getElementById('hideForMail').value='YES';document.getElementById('BtnMailTo').click();}</script>", this);

// return;
}
else
{

}
}

if (this.hideForMail.Value == "YES")
{

}

LoveInChongQing 2008-04-25
  • 打赏
  • 举报
回复
在页面初始化时(BTN_EML为隐藏按钮/文本框):
Me.BTN_EML.Attributes.Add("OnClick", "return confirm('" + xmlObject.GetXmlNodeValue(xmlCode, "MSG", "M200015") + "')")

当满足一些条件时,自动触发隐藏的按钮/文本框
如:
if a = "1" then
触发隐藏的按钮/文本框?弹提示框.
end if

谢谢指教.

16,717

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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