私はドロップダウンリストを作成中です。初期のHTMLコードは次のとおりです。私はリンクの上にテキストをクリックするとドロップダウンリストAppend、Array and Vaiidation:jQuery
<p><a class="link">Milk</a> <a class="link">Sugar</a><a href="" class="view">View All</a></p>
<select id="list">
</select>
(ミルク、砂糖、ハチミツ)は、例えば、リスト内で追加する必要があります ミルクをクリックすると、選択リストに追加する必要があります。
このように、残りの2つのリンクをクリックし続けると、リストに追加する必要があります。私はリストを追加できる部分に到達することができました。
私が直面している問題は、リスト内の項目の検証によるものです。 3つのアイテム(ミルク、シュガー、ハニー)がすでにリストに存在する場合は、再度クリックすると追加しないでください。
iを1牛乳として、私は、リスト内のすべてのアイテムを収集し、リストの下に表示したいviewAllをクリック2.シュガー
3.ハニー
は、誰もが私を助けることができる。また
、次のようにします。重複したエントリの検証とリストの表示。
私のjQueryのコードは以下の通りである:
var status = null;
var isEmpty = null;
var isFull = null;
var count = 0;
var newStatus = true;
$(".link").bind("click", function(a) {
var clickItem = a.target.text;
//alert (clickItem);
checkIsEmpty();
appendClickValue(status, clickItem);
});
$(".view").click(function() {
checkIsEmpty();
if (newStatus ==true && count == 0) {
alert ("Is Empty " + status);
}
else if (newStatus == false && count == 1) {
alert ("Is Full " + status);
}
});
function checkIsEmpty() {
if ($("#list option").length <= 0) {
isEmpty = true;
status = isEmpty;
}
else if ($("#list option").length >= 1) {
isFull = true;
status = isFull;
}
}
function appendClickValue (checkStatus, newItem) {
//validateItems();
if (status == true) {
$("#list").append("<option>" + newItem + "</option>");
count = 1;
newStatus = false;
}
}
また、私はあなたが私がよりよく理解できるコードにコメントをすることができれば、私は本当に感謝していますので、初心者。
のクリックで[選択]の下で、ULを追加します。あなたのコードでは、リストにはすでに値が設定されています。 – Vish
例を試しましたか? http://jsfiddle.net/H2SeT/5/。リンクをクリックするだけで選択項目に追加されます。重複がある場合は追加しません。基本的には、少ないコードで必要なものを実行します。 – elclanrs
素晴らしい!これはより良い解決策です! – Vish