1

次のドロップダウンリストがあります。

 <select id="dropdown">
      <option value="AB">Alberta Standards</option>
      <option value="BC">British Columbia Standards</option>
 </select>

何も変更せずに標準をカリキュラムに変更しようとしています。

これは私が持っているものです:

$('#dropdown option').filter(function() { return /Standards/.text($(this).text());}).text('Curriculum');

しかし、これはすべてをカリキュラムに置き換えます!何か案は?

ありがとう、

4

5 に答える 5

1

Hiyaワーキングデモ http://jsfiddle.net/fppeZ/ または http://jsfiddle.net/fppeZ/1/

よく読んでください:http://www.regular-expressions.info/wordboundaries.html

メタ文字\bは、カレットやドル記号のようなアンカーです。「単語境界」と呼ばれる位置で一致します。この一致は長さがゼロです。

単語の境界として適格な3つの異なる位置があります。

  • 文字列の最初の文字の前。最初の文字が単語文字の場合。

  • 文字列の最後の文字の後、最後の文字が単語文字の場合。

  • 文字列内の2つの文字の間。一方は単語文字で、もう一方は単語文字ではありません。

お役に立てれば、

Jqueryコード

$('#dropdown option').each(function() {

     $(this).text($(this).html().replace(/\bStandards\b/g, 'Curriculum'));
});​
于 2012-05-18T11:08:51.987 に答える
0

代わりにこれを使用してください

$('#dropdown option').each(function() {
    $(this).text($(this).text().replace( /Standards/gi, 'Curriculum'));
});
于 2012-05-18T11:02:56.683 に答える
0
$('#dropdown option').each(function() {
    $(this).text($(this).text().replace(/Standards/g, 'Curriculum'));
});
于 2012-05-18T11:04:49.227 に答える
0

フィルタ関数は、テキスト「standards」を含む要素を検索し、代わりにそれらのテキストを置き換え
ます。

$('#dropdown option').each(function(i,v){
  $(v).text().replace( /Standards/gi, 'Curriculum');
});
于 2012-05-18T11:05:17.017 に答える
0

使用するだけeachです:

$("#dropdown option").each(function () {
    $(this).text($(this).text().replace("Standards", "Curriculum")​​​​​​​​​​​​​​​​​​);
​​​​​​});

</ p>

于 2012-05-18T11:06:13.660 に答える