2

JavaScript からの要素の更新に問題があります。私のプロジェクトはかなり複雑ですが、ここにその小さな部分があります:

myWebService(/*...*/)
.done(function (result) {
    var newRows = $(rows).clone();
    $('#drop-placeholder').after(newRows);
    $(newRows).data('test', 'ZZZZZZZZZZZZZZZZZZZZZZZ');
}

Chrome を使用して、これらのステートメントの実行を監視できます。ただし、newRowsウォッチ ウィンドウでは、属性が追加/更新されないことがわかります。そして、案の定、呼び出しが完了した後、指定した属性がページに表示されません。

誰が私が欠けているかもしれないものを見ることができますか?rows(したがってnewRows) は、任意の数のテーブル行要素を表します。

4

2 に答える 2

9

.data()純粋に jQuery によって処理されるバックグラウンド データを設定します。HTML 属性は設定しません。

のような属性を設定しようとしている場合は、data-test<div data-test="stuff"></div>使用する必要があります.attr("data-test", variable)

于 2013-03-27T22:49:26.047 に答える
2

datajQuery 経由の設定では、属性は設定され.data() 、基になるデータ ストアのみが設定されます。属性を変更したい場合は、 を使用する必要があります.attr()

于 2013-03-27T22:50:45.213 に答える