Aufruf js von Code bestätigen hinter
-
18-09-2019 - |
Frage
Code-Behind
Protected Sub btnDelete_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnDelete.Click
Dim ResourceObject As Object
Dim js As [String] = (vbCr & vbLf & " if(confirm('Esta Seguro de eliminar de la lista')==true)" & vbCr & vbLf & " document.getElementById('" & txtRespuesta.ClientID & "').value='true';" & vbCr & vbLf & " else" & vbCr & vbLf & " document.getElementById('") + txtRespuesta.ClientID & "').value='false';" & vbCr & vbLf & " "
ScriptManager.RegisterStartupScript(Me, Me.[GetType](), "Key", js, True)
If txtRespuesta.Text = "true" Then
-Action 1
Else
-Action 2
End If
End Sub
Designer
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<tr >
<td align="center" colspan="2">
<asp:TextBox ID="txtRespuesta" runat="server" Width="174px" Height="21px"
MaxLength="20" style="font-weight: 700" Font-Names="Verdana" TabIndex="2"></asp:TextBox>
</td>
</tr>
<asp:Button ID="btnUpdate" runat="server" Height="28px"
style="font-weight: 700" Text="変更" Width="68px" TabIndex="3" />
<asp:Button ID="btnDelete" runat="server"
</script>
</ContentTemplate>
</asp:UpdatePanel>
Bitte helfen. ScriptManager.RegisterStartupScript tut nichts.
Lösung
Erwarten Sie sofort bestätigen-Popup so Ihre nächste Zeile (Wenn txtRespuesta.Text = False Then) darauf reagieren können?
Das wird nicht passieren! Erst wenn die Verarbeitung des Code-Behind abgeschlossen ist, und etwas an den Browser gesendet wird. Also nur dann kann eine confirm auftauchen. Und die nächste Postback an den geänderten Wert reagieren könnten.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow