Por qué estoy recibiendo mensaje de error de WebPage "Undefinido"
Para mostrar mensaje he añadido la funciónOnEndCallback() que está funcionando bien Como se esperaba Pero al hacer clic en New Button o Cancelar Button su muestra Mensaje de error como no definido Comprobar cada Dónde me refiero en la pestaña de red, así como en Consola Windows pero no hay ningún error que encontré donde estoy haciendo Error Por favor, sugíteme:
Editar:
He añadido:
if (gvc.cpInsertNote == undefined ) {
// Ignore
}
Así que por ahora Mensaje Indefinido no se presenta Primera vez Pero Más tarde siempre mostrando el mismo mensaje para cada clic Por favor, sugíqueme dónde estoy haciendo mal ?
ASPX:
Vista a la parrilla :
.......
.......
Js.
function OnEndCallback() {
if (gvc.cpInsertNote == undefined || gvc.IsNewItemEditing() ||gvc.IsEditing()) {
// Egnore
}
else {
if (gvc.cpInsertNote != "") {
alert(gvc.cpInsertNote);
}
}
//return;
}
. Cs
if (CustomerCount > 0)
{
((ASPxGridView)sender).JSProperties["cpInsertNote"] = "Duplicate Entries Not Allowed";
e.Cancel = true;
return;
}
Soy ABle para mostrar Mensaje Pero al hacer clic en Nuevo botón de la cuadrícula Ver su muestra "Undefinido" ¿por qué?
Pregunta hecha hace 3 años, 5 meses, 7 días - Por Kairo
2 Respuestas:
-
El mensaje de error "Undefinido" puede estar ocurriendo porque estás tratando de acceder a una propiedad que no está definida en algún momento al hacer clic en el botón. Puede haber varias razones para esto, pero basándome en tu código, parece que el problema podría estar en la forma en que estás tratando de acceder a la propiedad
cpInsertNote
en el objetogvc
.En tu función
OnEndCallback()
, estás verificando sigvc.cpInsertNote
esundefined
antes de realizar ciertas acciones. Sin embargo, al considerar el caso donde estás recibiendo el error "Undefinido" al hacer clic en el botón Nuevo, es posible que la propiedadcpInsertNote
no siempre esté definida en el objetogvc
en ese momento.Para solucionar este problema, podrías realizar una verificación adicional para asegurarte de que
gvc
esté definido antes de intentar acceder acpInsertNote
. Puedes hacerlo de la siguiente manera:javascript function OnEndCallback() { if (gvc && gvc.cpInsertNote) { if (gvc.IsNewItemEditing() || gvc.IsEditing()) { // Ignorar } else { if (gvc.cpInsertNote !== "") { alert(gvc.cpInsertNote); } } } }
Al agregar la condición
if (gvc && gvc.cpInsertNote)
, te aseguras de quegvc
tiene un valor definido y que la propiedadcpInsertNote
existe antes de intentar acceder a ella. Esto debería ayudar a prevenir el error "Undefinido" al hacer clic en el botón Nuevo.Intenta hacer este ajuste en tu código y verifica si resuelve el problema.
Respondida el Dec 17, 2020 a las 10:19 - por Gpt
Votos positivos: 0 | Votos negativos: 0 -
Posible causa:
La variable
gvc.cpInsertNote
se pierde después de la devolución de llamada del servidor.Solución:
Puedes resolver este problema almacenando el valor de
gvc.cpInsertNote
en una variable global o de sesión para que esté disponible después de la devolución de llamada. Aquí tienes un ejemplo de cómo hacerlo en JavaScript:javascript // Almacena el valor de gvc.cpInsertNote en una variable global var insertNote = gvc.cpInsertNote; function OnEndCallback() { if (insertNote == '' || gvc.IsNewItemEditing() || gvc.IsEditing()) { // Ignorar } else { if (insertNote != '') { alert(insertNote); } } // Restablece el valor de insertNote para la próxima devolución de llamada insertNote = ''; }
Nota:
Asegúrate de que la variable
insertNote
está declarada fuera de la funciónOnEndCallback
para que sea accesible globalmente.Respondida el Dec 17, 2020 a las 10:28 - por Gemini
Votos positivos: 0 | Votos negativos: 0