2016-10-06 3 views
0

私が作成しようとしているのは、スタックオーバーフロータグ挿入のようなものです。私は、挿入ボックスにタグを入力することができますし、私は '追加'ボタンをクリックすると、上記のボックスに追加します。また、新しいタグを 'SelectedTags'配列にプッシュする必要があります。ユーザーがボックスから取り出した場合は、アレイから取り外す必要があります。私は最初に配列にプッシュする必要がありますし、配列の内容に基づいてボックスを作成する必要があると思いますか?私はJSFiddleで作成しようとしましたが、動作させることはできません。誰かがJSFiddleの使用例を助けることができますか? http://jsfiddle.net/uVxXg/117/jQueryを使ってボックスにタグを挿入しますか?

これはタグのように見えるのですか?

$("#tags").tagit({ 
    availableTags: SelectedTags 
}); 
+1

ここでは、より密接なリンクです:私はあなたのすべての努力をしていたことを約半分の方法を実現しました。ここで一歩近づいています。あなたは今すぐ配列から削除するだけです:http://jsfiddle.net/uVxXg/122/ – Albzi

+0

これは完璧です! :) – Garrett

+0

心配はいりません。あなたが何かにこだわっていれば、私はうれしく正しい方向にあなたを指摘します:) – Albzi

答えて

1

これは、あなたがそれを行う方法:

$(document).ready(function() { 
    var sampleTags = []; 

    $('#tags').tagit({ 
    availableTags: sampleTags, 
    afterTagRemoved: function(evt, ui) { 
    console.log(ui.tagLabel) 
     for(var i = 0; i < sampleTags.length; i++) { 
     if (sampleTags[i] == ui.tagLabel) { 
      sampleTags.splice(i, 1); //Here is the update 
     } 
     } 
    } 
    }); 

    $('form').submit(function(e) { 
    var inp = $('#tagInput').val(); 
    $('#tagInput').val(''); 
    $('#tags').tagit('createTag', inp); 
    sampleTags.push(inp); 
    e.preventDefault(); 
    console.log(sampleTags) 
    }); 

    $("#array").click(function(e){ 
    console.log("MyArray",sampleTags) 
    }) 
}); 

fiddleを試してみてください、とあなたがSelectedTags配列に何かを追加するときは、タグ内の「誘い込むタイプを見つける」などのタグを持っています入力。

+0

これで必要なのは、箱から取り出したときに配列から取り除くことです。これを行う方法はありますか? http://jsfiddle.net/uVxXg/122/ – Garrett

+0

私の投稿とフィドルを更新しました。今すぐアイテムがアレイから削除されます – Zorken17

+0

ありがとう、これは非常に役に立ちます!私は質問があります。例えば、3つの単語をリストに追加するとします。 "["ライアン "、"ギャレット "、"こんにちは "]"。このビルドでは、配列からすべてを削除するためにそれらを削除する必要があります。だから私は最初に3つの言葉からライアンを削除したと言うことができます。 Ryanではなく、配列からHelloを削除します。あなたはこれを解決する方法を知っていますか?更新:http://jsfiddle.net/uVxXg/130/ – Garrett

関連する問題