button için asp.net onClick etkinliği

Tıklatıldığında SQL sunucuma bağlanan ve saklı yordamı çalıştıran bir web sayfasındaki düğme var. Düğmeler iyi çalışıyor (Veriyi bir veritabanı tablosuna aktarıyor).

.NET programlamada yeniyim ve zaten sahip olduğum düğmenin geçerli koduna eklenecek doğru kod fikirlerini bulmakta zorlanıyorum.

İdeal olarak, sadece "Tamam" seçeneğiyle "verilerin kaydedildiğini" kullanıcıya bildirmek için düğmenin tıklanması ve kullanıcının ana sayfaya yönlendirilmesi için bir mesaj kutusunun görünmesini istiyorum.

Ayrıca, kullanıcının düğmeye birkaç kez basmasını istemediğimden bu düğmeye basıldığında yalnızca bir kez basıldığında veya devre dışı bırakıldığından emin olmamız gerekir.

Düğme için şu anki kodum:

Protected Sub btnAddRawData_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAddRawData.Click

    'database conn, this is linked to the web config file .AppSettings
    Using dbconnection As New SqlConnection(ConfigurationManager.AppSettings("dbconnection"))
        dbconnection.Open()

        'command to state the stored procedure and the name of the stored procedure
        Using dbcommand As SqlCommand = dbconnection.CreateCommand
            With dbcommand
                .CommandType = CommandType.StoredProcedure
                .CommandText = "GasNominationsRawData_Insert"

                'simply execute the query
                dbcommand.ExecuteNonQuery()

                'I need to add some code for the button here and...

                'redirect to the main home page
                Response.Redirect("~/default.aspx?")

            End With
        End Using
    End Using
End Sub

Herhangi bir fikir ve öneri çok takdir edilecektir.

Saygılarımızla, Betty.

0

1 cevap

function success()
{

 alert('Your data has been saved successfully)';
 window.location.href='Default.aspx';
}

Bu satırın hemen arkasındaki kodda:

dbcommand.ExecuteNonQuery()

Bunu yap:

Dim cs As ClientScriptManager = Page.ClientScript
Dim csname1 As [String] = "PopupScript"
Dim cstype As Type = Me.[GetType]()
Dim cstext1 As New StringBuilder()
cstext1.Append("success();")
cs.RegisterStartupScript(cstype, csname1, cstext1.ToString())
0
katma
window.location, protokol belirtmediğiniz sürece çalışmaz. window.location.href = "default.aspx" komutunu kullan
katma yazar Deeptechtons, kaynak
Hey çocuklar, yukarıdakiler için çok teşekkürler. Bir muamele yapar. Ben kodunun window.location.href parçası ile sorun vardı ama 'Response.Redirect ("~/default.aspx?") İle değiştirildi ve bu sadece aynı çalışır.
katma yazar Betty, kaynak
@Icarus, kabul etmek için 'Bu yazı size yararlı oldu mu?' İçin 'Evet' seçeneğini tıklamanız yeterli mi?
katma yazar Betty, kaynak
Tamam, zaman ayırdığınız için çok teşekkürler :)
katma yazar Betty, kaynak
@Deeptechtons düzeltme için teşekkürler!
katma yazar Icarus, kaynak
@Betty Çalıştığına sevindim. Lütfen cevabı kabul edin; Bu, SO'da daha fazla insanın gelecekte size yardımcı olmasını teşvik edecektir.
katma yazar Icarus, kaynak
@Betty, yukarı/aşağı oklarla 0 rakamının altında bir onay işareti görmelisiniz. Cevabı kabul etmek için onay işaretini tıklamanız yeterlidir.
katma yazar Icarus, kaynak