У меня есть страница ASP.net. Он имеет 3 окна ввода и кнопку. При нажатии на кнопку выполняется следующий фрагмент кода.показывает окно предупреждения в asp.net перенаправляет на пустую страницу, а затем обратно на исходную страницу
protected void buttonId_Click(object sender, EventArgs e)
{
// Create a request using a URL that can receive a post.
WebRequest request = WebRequest.Create("https://visitor2.constantcontact.com/api/signup");
// Set the Method property of the request to POST.
request.Method = "POST";
// Create POST data and convert it to a byte array.
string postData = "some secrect key";
postData = postData + "&email=" + emailadd.Text;
postData = postData + "&first_name=" +fname.Text;
postData = postData + "&last_name=" + lname.Text;
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
// Set the ContentType property of the WebRequest.
request.ContentType = "application/x-www-form-urlencoded";
// Set the ContentLength property of the WebRequest.
request.ContentLength = byteArray.Length;
// Get the request stream.
Stream dataStream = request.GetRequestStream();
// Write the data to the request stream.
dataStream.Write(byteArray, 0, byteArray.Length);
// Close the Stream object.
dataStream.Close();
// Get the response.
WebResponse response = request.GetResponse();
// Get the stream containing content returned by the server.
dataStream = response.GetResponseStream();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader(dataStream);
// Read the content.
string responseFromServer = reader.ReadToEnd();
// Clean up the streams.
reader.Close();
dataStream.Close();
response.Close();
if (responseFromServer.ToLower().Contains("success"))
{
//signup complete
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Thanks for signing up!')", true);
} else {
//error occured
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Whoops! Something went wrong. Please try again.')", true);
}
}
Таким образом, запрос успешно отправлен и получен ответ. Когда следующая строка кода запускается, веб-страница переходит на пустую страницу и показывает предупреждение.
ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Thanks for signing up!')", true);
После нажатия кнопки OK
на оповещения о сообщении автоматически переходит обратно на исходную страницу.
Как остановить его от перехода на пустую страницу? Я хочу, чтобы предупреждение отображалось на исходной странице, и вам не нужно повторно перемещаться вперед и назад.
Вот мой HTML
<div class="footer_subscribe">
<asp:TextBox ID="fname" runat="server" class="name" value="First Name" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'First Name';}"></asp:TextBox>
<asp:TextBox ID="lname" runat="server" class="name" value="Last Name" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Last Name';}"></asp:TextBox>
<asp:TextBox ID="emailadd" runat="server" class="name" value="Join our mailing list" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Join our mailing list';}"></asp:TextBox><br>
<asp:Button ID="buttonId" OnClick="buttonId_Click" class="btn btn-info sub1" runat="server" Text="SUBSCRIBE"></asp:Button>
</div>