Jak inni już wspomniano, okno komunikatu będzie stronie klienta JavaScript. Tak więc problemem jest, jak zmusić skrzynkę komunikatów JS klienta ze strony serwera. Prostym rozwiązaniem jest umieszczenie tego w HTML:
<script>
var data = '<%= JsData %>';
alert(data);
</script>
i do wypełnienia tej data
od strony serwera kodu źródłowego:
public partial class PageName : Page
{
protected string JsData = "your message";
pamiętać, że wartość ciąg powinien być ciąg JavaScript, tj być jednolinijkowym, ale może zawierać zbiegające znaki nowej linii jako \n
.
Teraz możesz wykorzystać wszystkie swoje umiejętności i sztuczki z JavaScriptu lub JQuery, aby zrobić cokolwiek zechcesz za pomocą tego tekstu wiadomości na kliencie, na przykład wyświetlaj prosty alert()
, jak pokazano w powyższym przykładzie kodu lub wyrafinowane pole wiadomości lub wiadomość transparent.
(Zauważ, że wyskakujące okienka są czasami mile widziana i zablokowane)
Należy również zauważyć, że ze względu na protokół HTTP, wiadomości mogą być wyświetlane tylko w odpowiedzi na żądanie HTTP, że użytkownik wysyła do serwera. W przeciwieństwie do aplikacji WinForm, serwer WWW nie może wysłać wiadomości do klienta, gdy uzna to za stosowne.
Jeśli chcesz wyświetlić wiadomość tylko raz, a nie po tym, jak użytkownik odświeży stronę za pomocą F5, możesz ustawić i odczytać plik cookie z kodem javascript. W każdym razie, zaletą tej metody jest to, że jest to łatwy sposób na uzyskanie danych z serwera do javascript na kliencie i że możesz użyć wszystkich funkcji javascript, aby osiągnąć wszystko, co chcesz.
Co to jest myStringVariable ?? – adityawho
myStringVariable to tylko ciąg znaków. Zostanie ustawiony na wiadomość, którą chcesz wyświetlić. – Gage
@Gage Po wyświetleniu okna komunikatu po wywołaniu zdarzenia użytkownik otrzymuje przycisk "OK". Czy mimo to należy podłączyć Response.Redirect ("desired/path.aspx"); do tego? – JsonStatham