0

私は次のJQueryコードを持っています:

  $(targetSelector)
    .attr('data-disabled', 'yes')
    .attr('title', '')
    .addClass('disabled')
    .prop('disabled', true);

このコードを変更して、title属性を''に設定する前に、titleの現在の値を取得し、それを'data-title'属性に格納するにはどうすればよいですか。

4

4 に答える 4

3

私は提案します:

$(targetSelector).attr({
    'data-disabled': 'yes',
    'data-title': function() {
        return this.title;
    }
}).attr('title', '').addClass('disabled').prop('disabled', true);​

JSフィドルデモ

参照:

于 2012-11-27T12:22:09.583 に答える
1

これを試して

$(targetSelector)
.attr({'data-disabled' : 'yes', 'data-title' : function() {return this.title;}})  // set the title before it is removed
.attr('title', '')
.addClass('disabled')
.prop('disabled', true);
于 2012-11-27T12:23:40.217 に答える
0

これを試して

$(targetSelector)
    .attr('data-disabled' : 'yes')
    .attr('data-title', $(this).attr('title'))
    .attr('title', '')
    .addClass('disabled')
    .prop('disabled', true);
于 2012-11-27T12:24:25.873 に答える
0

あなたはこのようにそれを行うことができます:

$(targetSelector).attr({
    'data-disabled': 'yes',
    'data-title': function() { return this.title }
    'title': ''
  }).addClass('disabled').prop('disabled', true);

他の答えも同様ですが、アクセスはが要素であるthis.title場合にのみ機能し、それはコンテキストによって異なります。this上記のメソッドは、代わりにfunction属性を使用してタイトルを返します。

于 2012-11-27T12:26:40.277 に答える