ユーザーが「+」ボタンをクリックすると、ドロップダウンと入力フィールドが追加されます。私は各行のドロップダウン値としてその入力フィールド名を作りたいと思う。ドロップダウン値で追加する新しい入力フィールド
最初のドロップダウンで「facebook」を選択した場合、2番目のドロップダウンリストに表示されません。単純に値を選択すると、次のドロップダウンには表示されません。私はその部分をしました。しかし、私の質問は、2番目のドロップダウンで "Google"を、3番目のドロップダウンで "Yahoo"を選択した場合です。もう一度、最初または2番目のドロップダウンをクリックすると、再び「Yahoo」が表示されません。
コードが存在する場所の下にあるリンクを見つけてください。
http://jsfiddle.net/mhmdsohail/v9uem13u/5/
$(document.body).on('click', '.add-more', function (e) {
var lastSelect = $("select").last().find('option');
var toAppend = '';
if (lastSelect.length > 1) {
toAppend += '<select name="select[]">';
$.each(lastSelect, function (i, v) {
if ($(this).text() !== $("select:last option:selected").text())
toAppend += '<option value="' + $(this).val() + '">' + $(this).text() + '</option>';
});
toAppend += '</select>';
toAppend += '<input type="text" name=""><br>';
}
$(".append-select").append(toAppend);
});
ここにHTMLコードを投稿してください –
@MayankPandey http://jsfiddle.net/mhmdsohail/v9uem13u/5/ – acmsohail
をチェックしてください。コードに選択変更処理を含める必要があります。それはあなたの仕事をより少なくするのに役立ちます。私はまた、可能なオプションを指定する配列をinlcudeすることをお勧めします。あなたは、選択の変更中にDOMを解析する必要はありません。 var options = [{name: "Facebook"、inUse = true}、{...}、...] – Wolfgang