jquery - Cómo llamar a una función dentro de $(documento).ready
debugging firebug (3)
Estoy tratando de depurar mi aplicación web que utiliza jQuery.
En firebug im Call está dentro de $ (document) .ready ..
function val() { console.log(''validated outside doc.ready''); }
$(document).ready(function()
{
console.log(''document ready...'');
function validate() { console.log(''validated!''); }
}
En la consola firebug escribo validate()
y dice que no es una función
Si val()
funciona bien.
¿Cómo llamo validar desde la consola?
No está llamando a una función como esa, simplemente define la función.
El enfoque correcto es definir la función fuera de document.ready
y llamarla adentro:
// We define the function
function validate(){
console.log(''validated!'');
}
$(document).ready(function(){
// we call the function
validate();
});
Otra opción es autoinvocar la función así:
$(document).ready(function(){
// we define and invoke a function
(function(){
console.log(''validated!'');
})();
});
Su función de validate
es local a la función que ha pasado al controlador jQuery ready
.
si lo haces:
window.validate = function(){ /*....*/ };
Podrás acceder desde la consola. Pero no es una buena práctica contaminar el alcance global a menos que sea solo para la depuración.
bueno, ¿hay alguna razón por la que necesitarías esa función dentro del documento listo? solo dentro de esos corchetes (alcance) existirá la función. solo muévalo hacia fuera, o todo solo dentro de document.ready