13

jquery 1.9.0live()には関数はありませんが、jquery.unobtrusive.ajax.jsはすでにこの関数を使用しています。

古いバージョンのjqueryまたは別の方法を使用する必要がありますか?

4

4 に答える 4

12

1.7で減価償却され、1.9で削除されました。on()代わりに使用してください。

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

$("#myButton").on("click", function(){
    alert("Clicked");
});

ここにたくさんの良い情報があります:

http://www.elijahmanor.com/2012/02/differences-between-jquery-bind-vs-live.html

Unobtrusive Ajaxに関しては、v1.9より前のバージョンのjQueryがlive()まだ存在している場合に含める必要があります。

MS CDNを参照している場合は、

http://ajax.aspnetcdn.com/ajax/mvc/3.0/jquery.unobtrusive-ajax.js http://ajax.aspnetcdn.com/ajax/mvc/3.0/jquery.unobtrusive-ajax.min.js

その場合、これらがjQueryを直接参照しているようには見えません。1.9バージョンではなく、1.8バージョンをコードに含めるだけです。

于 2013-01-29T23:06:39.673 に答える
8

.live().on():のイベント委任構文に置き換えられました。

$('#parent').on('click', '.child', function() {
  ...
});

#parentセレクターを呼び出すときに存在する必要があるため、要素がトップレベルの場合documentは、親として使用します。

于 2013-01-29T23:09:11.997 に答える
2

jquery.migateはレガシー関数に追加し直します。これは、jquery.unobtrusive.ajax.jsが期待どおりに機能することを意味します。

公式ブログに従ってjquery.migrateライブラリを参照すると、nugetパッケージもありますが、テンプレート/レイアウトビューを更新する必要があることは明らかです。

http://blog.jquery.com/2013/01/31/jquery-migrate-1-1-0-released/

http://nuget.org/packages/jQuery.Migrate/

Javascriptコンソールは問題を強調しています...

JQMIGRATE:ロギングはアクティブですJQMIGRATE:jQuery.fn.live()は非推奨ですJQMIGRATE:jQuery.fn.andSelf()はjQuery.fn.addBack()に置き換えられましたJQMIGRATE:jQuery.clean()は非推奨です

于 2013-02-03T22:43:32.240 に答える
1

live()最新のjQueryバージョンでは非推奨になっていますが、Microsoftは、更新された目立たないスクリプトを、デフォルトのスクリプトを上書きするNuGetパッケージとして管理しています。

于 2013-05-23T15:20:26.203 に答える