En mi página del lado del servidor, tengo una secuencia de comandos heredada que quiero modificar para probar si un campo está en blanco antes de abrir la ventana de confirmación. Esto es lo que intenté, agregando $ (# hdfldRecId) porque si este campo está en blanco, no quiero que se abra la confirmación.
scriptBlock = "function beforeDelete()" & vbCrLf & _
"{return($('#hdfldRecId').val() !> '' && confirm('Are you sure you want to delete this item?'));}"
If (Not ClientScript.IsClientScriptBlockRegistered("deletePromptScript")) Then
ClientScript.RegisterClientScriptBlock(Me.GetType(), _
"deletePromptScript", _
scriptBlock, _
True)
End If
'use the OnClientClick property of the button to cause the above
'script to be executed when the button is clicked
btndelete.OnClientClick = "return(beforeDelete());"
Cuando ejecuto la página, la depuración indica que faltan () pero todos los emparejamientos coinciden.
<script type="text/javascript">
//<![CDATA[
function beforeDelete()
{return($('#hdfldRecId').val() !> '' && confirm('Are you sure you want to delete this item?'));}//]]>
</script>
Entonces, no estoy seguro de cómo agrego esta prueba para ver si hay un valor en $ (hdfldRecId) y si lo hay, ejecute el diálogo de confirmación.
Gracias
2 respuestas
Return no es un método, así que deshazte de (y).
"return beforeDelete();"
Y no estoy seguro de qué se supone que es. Supongo que quieres comprobar la longitud
function beforeDelete() {
return $('#hdfldRecId').val().length && confirm('Are you sure you want to delete this item?');
}
¿Has probado:
btndelete.OnClientClick = "beforeDelete;"
O de hecho:
btndelete.OnClientClick = "return beforeDelete();"
Además de arreglar el error tipográfico que epascarello señaló.
Nuevas preguntas
java
Java es un lenguaje de programación de alto nivel. Utilice esta etiqueta cuando tenga problemas para usar o comprender el idioma en sí. Esta etiqueta rara vez se usa sola y se usa con mayor frecuencia junto con [spring], [spring-boot], [jakarta-ee], [android], [javafx], [hadoop], [gradle] y [maven].