0

単純なajaxリクエストを使用してコントローラーから新しい検索結果を取得する検索ページがあります。

コントローラはレンダリングされたhtmlとして結果を返すため、クライアントスクリプトが行う必要があるのは$('#results')。html(data);だけです。

htmlにはページ付けされたリンクも含まれています。

ajax成功イベントハンドラー内のこれらのページ付けされたリンクにクリックハンドラーを追加したいのですが、Aのテキストプロパティからページ番号を取得するのはちょっと厄介です。仮に、リンクは「ページ1」、「ページ2 "、それから私はテキストを解析するでしょう。

私はこれを間違っていますか?

代わりに、部分ビュー内にajaxリンクを生成する必要がありますか?

4

1 に答える 1

1

ページ番号は要素のデータとして保存できます。イベントハンドラーを接続する際に、そのデータaを参照できます。従来、つまり私の古いアプリケーションでは、次のようにします。

<a href="#" name="myLink" data="<%: [pageNumber] %>">
  Page <%: [pageNumber] %>
</a>

次に、jquery側(つまり、ajaxコールバック):

$('a[name=myLink]').click( function (e) {
  e.preventDefault();
  var pageNumber = $(this).attr('data');
  // do what you have to do with the pageNumber
});

ただし、このルートをたどる場合は、 jQueryデータ関数を参照できます(参照する必要があります)。

于 2012-06-20T01:56:46.207 に答える