Событие asp.net onClick для кнопки - PullRequest
0 голосов
/ 28 октября 2011

У меня есть кнопка на веб-странице, которая при нажатии подключается к моему серверу SQL и запускает хранимую процедуру.Кнопки работают отлично (просто помещает данные в таблицу базы данных).

Я новичок в программировании на .NET, и у меня возникают проблемы с поиском правильных идей кода для добавления к текущему коду для кнопки, которая у меня уже есть.

В идеале, я бы хотел, чтобы при нажатии кнопки появлялось окно сообщения, чтобы уведомить пользователя о том, что «данные были сохранены», только с опцией «ОК», а затем для пользователя.перенаправлен на домашнюю страницу.

Мне также нужно убедиться, что эта кнопка нажата только один раз или деактивирована после ее нажатия в тот день, поскольку я не хочу, чтобы пользователь нажимал кнопку несколько раз.

Вот мой текущий код кнопки:

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

Любые идеи и предложения будут высоко оценены.

С уважением, Бетти.

1 Ответ

0 голосов
/ 28 октября 2011
function success()
{

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

В коде позади, сразу после этой строки:

dbcommand.ExecuteNonQuery()

Сделайте это:

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())
...