javascript - El objeto no tiene el método ''en vivo''-jQuery
jquery selector (7)
Si la llamada a
.live()
está dentro de su propio código, simplemente cámbielo a.on()
usando las reglas que se muestran en http://api.jquery.com/live .Si el código está en un complemento jQuery de terceros, use el complemento jQuery Migrate para restaurar
.live()
hasta que el autor actualice su complemento: https://github.com/jquery/jquery-migrate#readme .En los sitios de producción, no use las URL que hacen referencia a la "última" versión de jQuery, como http://code.jquery.com/jquery-latest.js o http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js ya que se actualizarán automáticamente cuando se http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js una nueva versión de jQuery y su sitio se romperá repentinamente si no es compatible.
<script>
$(document).ready(function(){
$(''.delete'').live(''click'', function(e){
alert(''delete'');
e.preventDefault();
});
});
</script>
<a href=''#'' id=''_1'' class=''delete''>Delete</a>
Me da un error:
Unkeught TypeError: Object [object Object] no tiene el método ''live''
Simplemente no veo el problema?
Hay un escenario en el que ni .on (), ni .bind () no funcionarán: cuando el elemento no existe cuando se está agregando el controlador de eventos. Y esto fue lo que Live () hizo.
Hay un plugin jQuery migrate (use eso) ....... resolverá el problema
ASP.NET MVC ajax-discreto + jQuery 1.9 http://bugs.jquery.com/ticket/13220
Si usa jQuery 1.7+ use on(...)
lugar de en live(...)
.
Mira esto: http://api.jquery.com/on/
Ver en api.jquery.com/live
antiguo
$("a.offsite").live("click", function(){ alert("Goodbye!"); }); // jQuery 1.3+
$(document).delegate("a.offsite", "click", function(){ alert("Goodbye!"); }); // jQuery 1.4.3+
nuevo
$(document).on("click", "a.offsite", function(){ alert("Goodbye!"); }); // jQuery 1.7+
<script>
$(document).ready(function(){
$(''.delete'').on(''click'', function(e){
alert(''delete'');
e.preventDefault();
});
});
</script>
.live()
es una función obsoleta (de 1.7+) y eliminada por completo de jQuery 1.9+.
En su lugar, puede utilizar los .on()
o .bind()
: