2014-02-20 1 views
0

Помогите мне с этим:Отправлять подтверждение ok/cancel с данными базы данных? ASP.Net VB

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

Для примера:

|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯| 
| You are going to delete | 
| 4 messages, are you sure? | 
|       | 
| |OK|  |Cancel| | 
|___________________________| 

Номер 4 приводится из базы данных с помощью хранимой процедуры. Если пользователь нажимает OK, он должен сделать какой-то другой код, если его отменить, он должен просто вернуться ...

Это для веб-сайта на ASP.net с использованием Visual Basic.

Пожалуйста, помогите!

Update:

После @ T.S. Ответ: Я пришел к следующему:

'Method for receiving the number... 
'messages = numberReceived 
Page.ClientScript.RegisterStartupScript(Me.GetType, "Confirmation", "<script> if (confirm('You will delete " & messages.ToString & " messages, are you sure?')) { ConfirmOnClean() }; </script>", False) 

И функция JavaScript ConfirmOnClean() корректно вызывается. Что я могу сделать, чтобы вызвать метод на кодовом языке после того, как пользователь нажал ОК?

Update:

я наконец решил проблему, просто добавив скрытое поле на форме:

<asp:HiddenField ID="cleanStatus" Value="dontClean" runat="server" /> 

, а затем на Confirm на чистую функцию Я просто сделал:

function ConfirmOnClean() { 
    $('#<%=cleanStatus.ClientId %>').val('clean'); 
    __doPostBack('<%=btnClean %>',''); 
} 

И по методу Page_Load на моем кодовом замке я добавил:

If cleanStatus.Value.Equals("clean") Then 
    OnConfirm() 'Method for calling the stored procedure for deleting the messages. 
End If 

Надеюсь, это поможет кому-то!

ответ

1

Ваш вопрос не содержит конкретного кода. Итак, вот один из вариантов:

Предположим, что у вас есть Id. Вы вызываете хранимую процедуру

Dim message as String 
Using cmd as new SqlCommand(... 
    cmd.ExecuteNoQuery() 
    ' retrieve your parameters here 
    message = cmd.Parameters(0).Value 
End Using 

Теперь код возвращается пользователю со значениями, которые вы получили. Вы можете зарегистрировать блок сценария, чтобы сразу же отобразить сообщение на странице http://msdn.microsoft.com/en-us/library/z9h4dk8y%28v=vs.110%29.aspx

Когда пользователь Пользователь нажимает «ОК», вы можете, например, установить скрытое поле со значением и вызвать postback. Ваша страница aspx будет читать значение и вызывать DB-call для удаления значений.

Вы должны предоставить более подробную информацию, чтобы получить более конкретное решение здесь

+0

Проблема заключается в том, что я должен вызвать SP на замковое слушателя. Это нормально, но как мне вернуть его на страницу, чтобы он мог отображать данные в поле подтверждения? А затем после ввода пользователя вызовите другой метод на codebehind? – hectorviov

+0

@hectorviov Это именно то, что я объяснил вам во втором абзаце, и предоставил ссылку, где вы можете увидеть, как это делается. так как ваш вопрос не содержит какого-либо конкретного кода, я не могу предоставить какой-либо конкретный ответ. –

+0

Итак, до сих пор я сделал это: 'Page.ClientScript.RegisterStartupScript (Me.GetType,« Подтверждение »,« ", False)' и функция JavaScript-подтверждения ConfirmOnClean вызывается правильно. Как я могу вызвать метод delete на codebehind? @ t-s вы можете подробно остановиться на обратной почте? – hectorviov