佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1064|回复: 7

click第二次login button,error message 才会pop up。

[复制链接]
elfinxp 该用户已被删除
发表于 20-7-2006 09:51 AM | 显示全部楼层 |阅读模式
我现在用vb.net做asp.net web application.有些问题解决不了,希望你们能帮帮忙。 我在login的page加了一个pop up error message,当输入错误的用户名和密码时就会出现这个error message。可是每当我第一次click login button的时候,虽然密码是错误的,error message 却没有pop up,它好像只是refresh page而已。我必须重新输入密码然后click第二次login button,error message 才会pop up。

同样的情况也发生在另外一个page。那个page有一个image button,当你按那个iamge button,就会有一个新的window pop up。

请问如何只按一次就能完成我所要的效果?
回复

使用道具 举报


ADVERTISEMENT

发表于 20-7-2006 09:54 AM | 显示全部楼层
这应该是你的 code 的问题, 把你的 code 放上来看看.
回复

使用道具 举报

elfinxp 该用户已被删除
 楼主| 发表于 20-7-2006 10:03 AM | 显示全部楼层
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If (FormsAuthentication.Authenticate(txtUserName.Text, txtPassword.Text)) Then
            Response.Redirect("Approved.aspx")
        Else
            Button1.Attributes.Add("onclick", "return alert('Login failed. Please check your user name and password and try again.');")
            txtPassword.Text = ""
        End If
End Sub
回复

使用道具 举报

发表于 20-7-2006 10:17 AM | 显示全部楼层
这样写当然不会 pop. 那是因为你发现 login 出错后, 你才把 javascript bind 进 button 的 onClick event. 当你二次按的时候, onClick 就会引发你的 javascript.

你应该用 RegisterClientScriptBlock.
回复

使用道具 举报

发表于 22-7-2006 10:04 AM | 显示全部楼层
我的方法是


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If (FormsAuthentication.Authenticate(txtUserName.Text, txtPassword.Text)) Then
            Response.Redirect("Approved.aspx")
            Button1.Attributes.Add("onclick", "return alert('Login failed. Please check your user name and password and try again.');")
            txtPassword.Text = ""
        Else
            Button1.Attributes.Add("onclick", "return alert('Login failed. Please check your user name and password and try again.');")
            txtPassword.Text = ""
        End If
End Sub

[ 本帖最后由 quantum^_^ 于 22-7-2006 10:06 AM 编辑 ]
回复

使用道具 举报

elfinxp 该用户已被删除
 楼主| 发表于 24-7-2006 12:33 PM | 显示全部楼层
原帖由 quantum^_^ 于 22-7-2006 10:04 AM 发表
我的方法是


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If (FormsAuthentication.Authenticate(txtUserName.Text, txtPasswo ...



为什么要加同样的code??
可是我还是试了 不过还是必须按第二次才可以。
回复

使用道具 举报

Follow Us
发表于 24-7-2006 05:11 PM | 显示全部楼层
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If (FormsAuthentication.Authenticate(txtUserName.Text, txtPassword.Text)) Then
            Response.Redirect("Approved.aspx")
        Else
Dim strScript  as string
strScript = "alert('Login failed. Please check your user name and password and try again.');"
            Page.RegisterClientScriptBlock("warning", _
                    "<script language='JavaScript'>" & strScript & "</script> ")
            txtPassword.Text = ""
        End If
End Sub

应该可以,没有test
回复

使用道具 举报

elfinxp 该用户已被删除
 楼主| 发表于 25-7-2006 11:40 AM | 显示全部楼层
原帖由 石破天金 于 24-7-2006 05:11 PM 发表
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If (FormsAuthentication.Authenticate(txtUserName.Text, txtPassword.Text)) Then
...


arigatou!! 真的太感激你了!
回复

使用道具 举报


ADVERTISEMENT

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 23-9-2024 07:20 AM , Processed in 0.114588 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表