0

かなり単純ですが、私は何か間違ったことをしています。ここでは、var を宣言してから連結するのではなく、クリーンなチェーンを作成したいと考えています。

the_function( null, null, 
   $( this ) // START string I'm passing as a parameter
   .attr( 'data-href' )
   .html( '|foo:' + event.var ) 
); // END string I'm passing as a parameter

.html()ここでは無効だと思いますが、何が正しいですか?

4

3 に答える 3

3

は?このようなことをするつもりですか

the_function( null, null, 
   $( this ) // START string I'm passing as a parameter
   .attr( 'data-href' ) +  '|foo:' + event.var); 

あなたが持っていたもの

$( this ).attr( 'data-href' ) // returns a string.. it doesn't have a html method
于 2012-10-25T19:19:11.273 に答える
0

あなたが何を達成したいのかよくわかりませんが、ここにいくつかのメモがあります:

  • data- 属性に .data() メソッドを使用できます
  • .attr() で .html() を使用することはできません。$(selector) で html() を使用する必要があります。

したがって、基本的に、これを使用できます。

$(this).html('|foo:' + event.var).data('href')

于 2012-10-25T19:20:20.520 に答える
0

結果がどうなるかはわかりませんが、メソッドチェーンが本当に必要な場合は、ネイティブ.concat()メソッドを文字列にチェーンできます。

the_function( null, null, 
   $( this ).attr( 'data-href' )
            .concat('|foo:', event.var) 
);

.concat()または、チェーンを本当に掘り下げる場合は、呼び出しを分離します。

the_function( null, null, 
   $( this ).attr( 'data-href' )
            .concat('|foo:')
            .concat(event.var) 
);
于 2012-10-25T19:20:22.677 に答える