对象没有方法'生活' – jQuery

<script> $(document).ready(function(){ $('.delete').live('click', function(e){ alert('delete'); e.preventDefault(); }); }); </script> <a href='#' id='_1' class='delete'>Delete</a> 

给我一个错误:

Uncaught TypeError:Object [object Object] has no method'live'

我只是没有看到问题?

.live()是一个不赞成使用的函数(从1.7+开始),完全从jQuery 1.9+中移除。

您可以改为使用.on().bind()方法:

http://api.jquery.com/on/
http://api.jquery.com/bind/

  1. 如果对.live()的调用位于您自己的代码中,只需使用http://api.jquery.com/live上显示的规则将其更改为;.on()

  2. 如果代码位于第三方jQuery插件中,请使用jQuery Migrate插件恢复.live()直到作者更新其插件: https : //github.com/jquery/jquery-migrate#readme 。

  3. 在生产站点中,请勿使用引用“最新”版本的jQuery的URL,例如http://code.jquery.com/jquery-latest.js或http://ajax.googleapis.com/ajax/libs/jquery /1/jquery.min.js,因为当新版本的jQuery发布时,它们会自动更新,如果不兼容,你的网站会突然中断。

如果你正在使用on(...)而不是live(...)使用jQuery 1.7+。
检查这个: http : //api.jquery.com/on/

有一种情况下,.on()和.bind()都不会工作:当添加事件处理程序时,元素不存在。 这就是现场()所做的。

请参阅http://api.jquery.com/live/

 $("a.offsite").live("click", function(){ alert("Goodbye!"); }); // jQuery 1.3+ $(document).delegate("a.offsite", "click", function(){ alert("Goodbye!"); }); // jQuery 1.4.3+ 

 $(document).on("click", "a.offsite", function(){ alert("Goodbye!"); }); // jQuery 1.7+ 

使用.on

 <script> $(document).ready(function(){ $('.delete').on('click', function(e){ alert('delete'); e.preventDefault(); }); }); </script> 

有一个jQuery的迁移插件(使用)…….它将解决这个问题

ASP.NET MVC ajax-unobtrusive + jQuery 1.9 http://bugs.jquery.com/ticket/13220