3

多くのdivでは、スペースをピリオドに置き換えてクラス名を変更する必要があります。

だから私はこれを試しました

$(jqueryElements).each(function(index)
{ 
    jqueryElements[index].className.replace(' ','.');
});

クラスに2つの単語がある場合は正常に機能しますが、クラス名に3つ以上の単語がある場合は、失敗します。

className='one word';
jqueryElement[index].className.replace(' ','.'); // console-> one.word
className='many many words';
jqueryElement[index].className.replace(' ','.'); // console-> many.many words

何かがおかしい??

Chrome 25、Win7、jQuery1.8を使用しています

編集2

特定のクラス名を持つすべてのスパン要素を検索するには、スペースを置き換える必要があります。

だから私はこのようにjqueryを使用しています...

$('#span-container').find('span.'+jqueryElements[index].className.replace(' ','.').text('there are '+span_counter+'spans with this classname');

このリクエストの結果は次のようになります。

 $('#span-container').find('span.many.many.words).text('there are '+span_counter+'spans with this classname');

代わりに私は持っています:

$('#span-container').find('span.many.many words).text('there are '+span_counter+'spans with this classname');
4

2 に答える 2

3

.replace(/ /g, '.')代わりに使用してください。グローバルを意味しますg(「グローバル置換」のように)。私はあなたがやろうとしていることについて少しスキップしています。

于 2013-02-28T01:43:52.737 に答える
3

replace を使用せず、 and を使用splitjoinます。

jqueryElements[index].className.split(' ').join('.');
于 2013-02-28T01:54:58.963 に答える