0
<form id="myForm">

<select name="team_home" id="team_home_0">
    <option></option>
    <option value="italy">italy</option>
    <option value="spain">spain</option>
    <option value="germany">germany</option>
    <option value="france">france</option>
    <option value="portugal">portugal</option>
    <option value="england">england</option>
</select>
<input type="text" id="result_0" />
<select name="team_visit" id="team_visit_0">
    <option></option>
    <option value="italy">italy</option>
    <option value="spain">spain</option>
    <option value="germany">germany</option>
    <option value="france">france</option>
    <option value="portugal">portugal</option>
    <option value="england">england</option>
</select>
</form>

ポイントは、次のような出力を取得することです。

ここに画像の説明を入力

入力の行全体が完了するたびに、同じプロセスを実行するために新しい空の入力行が「表示」される必要があります。終わらない (動的な作成) ため、チームと結果は無限に繰り返すことができます。

jQuery を使用する必要があることはわかっていますが、その方法がわかりませんでした。

フィドル

4

2 に答える 2

0

これは、ID インクリメントの開始点のいくつかを配置したフィドルです。これが開始に役立つかどうかを確認できます。

http://jsfiddle.net/kmd97/Vk5xJ/

function appendTo(index) {
     var s = a new row of inputs with dynamic index
     $("#container").append(s);
     addClick(index);
 }
于 2013-02-04T18:00:50.153 に答える
0

ここから始めます。グループ ID をインクリメントしたり、入力をリセットしたりするには、拡張する必要があります。

http://api.jquery.com/clone

http://jsfiddle.net/6hLy9/9

<div id="wrapper">
    <div id="group1" class="group">
        <select name="team_home" class="team_home" id="team_home_0">
            <option></option>
            ...
        </select>
        <input type="text" class="result" id="result_0" />
        <select name="team_visit" class="team_visit" id="team_visit_0">
            <option></option>
            ...
        </select>
    </div>
</div>

$('select, input').on('change', function () {
    var emptyEls = false;
    var thisEl = $(this).parents('.group');
    $(this).siblings().each(function () {
        if ($(this).val() == '') {
            emptyEls = true;
        }
    });
    if (emptyEls == false) {
        $(thisEl).clone().appendTo('#wrapper');
    }
});
于 2013-02-04T16:46:19.907 に答える