1

そのため、いくつかのコンテンツを追加するスパン要素があります-このコンテンツが重複する場合があります。別の値と重複しているこの値を削除する方法...

これは私の出力htmlのように見えます:

<span class="some_class">
   "value01" 
   "value01" 
   "value02" 
   "value03" 
   "value03" 
</span>

これを行う方法がわからないため、関数を追加できません。助けてもらえますか?

4

2 に答える 2

2

これらの値が JS コードによって追加されている場合、次のように sth を作成できます。

http://jsfiddle.net/Sahdar/Nzs52/5/

このスパン内に配置されたすべての文字列を格納するオブジェクトを作成する必要があり、挿入の直前に、この挿入された文字列が既に格納オブジェクトにあるかどうかを確認します。

function(event) {
        var textareaValue = textarea.value();
        if(insertedTexts[textareaValue]) {
             event.preventDefault();
             textarea.value('');                         
         } else {
             insertedTexts[textareaValue] = true;
             someSpan.append("\""+textareaValue+"\"");
         }
    }

これらの値がすでにスパン内にある場合は、関数を次のように使用します。

var someSpan = $('.some_class');
var insertedTexts = [];

var result = someSpan.text().match(/"\w+(?=\")/gm);
result = result.map(function(value) {
    return value.substring(1,value.length);
});
result.forEach(function(value) {
    if(insertedTexts.indexOf(value) === -1) {
        insertedTexts.push(value);
    }
});
var newSpanText = "\""+insertedTexts.join('""')+"\"";
someSpan.text(newSpanText);
console.info(result, insertedTexts);

スパン テキストの再構築 (トリミングなど) ですが、主要な機能は保持されます。

jsFiddle 作業コピー:

http://jsfiddle.net/Sahdar/kKNXG/6/

于 2012-12-12T09:55:43.297 に答える
0

配列変数を作成する

var vals = [];

アイテムを追跡します。次に、アイテムをスパンチェックに追加する関数で:

if (vals.indexOf("Mynewvalue") > -1) {
  // Add to the span...
}
于 2012-12-12T10:04:48.303 に答える