2

<span>テーブルセルにいくつかの要素があります。スパンごとに、ユーザーがそれをクリックすると、イベント委任を使用してajaxリクエストを実行します。(イベントをトラップする関数はテーブルセルにバインドされています)。

問題は、ajax呼び出しにテーブル行識別子を含める必要があり、この識別子をどこに格納するか、またはそれを参照して使用する方法がわからないことです。

たとえば、テーブルの各行がPersonを表す場合、ユーザーがその行のスパンをクリックすると、ajax呼び出しにpersonIdを含める必要があります。

personIdは、行のクラス属性である必要がありますか(例<tr class='person-id-123'>...)?またはおそらくID(例<tr id='person-id-123'>...)?そして、クリックイベントをキャッチする関数でそれを参照して使用するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

2

HTML5データセット属性を使用する

<tr data-person-id=123>

$(".tr-parent").on('click', 'tr', function () {
    //$(this).data('person-id') is also valid
    ajaxRequest(this.dataset.personId);
});
于 2013-03-02T00:08:12.580 に答える
0

これには、ID、classを使用できます。これは、jqueryから値を取得できるためです。ただし、Data属性を使用するとより良いでしょう。

今ここにあなたのスパンのために

<span data-person-key="47" class="spanclass">
</span>

そしてjqueryからこのような値を得ることができます。

$(document).on("click",".spanclass",function(){
  var personKey = $(this).data("person-key");
  $.ajax({
    url: "whatever you url is. if its asp.net then method of controller will be here.or may be php page",
    type: "POST",
    data: {Personid : personKey },
    success://whatever you want to code in success,
    error://whatever you want to code in error
  });
});
于 2013-03-02T00:59:52.547 に答える