0

前回の投稿で、行を動的に生成し、データを新しい行にコピーする必要があるという質問をしました。正常に機能していますが、テキストフィールドに対してのみです。しかし、フォームにドロップダウンもあり、最後の行で選択されたオプションが新しい行に表示されません。これは私の質問でし た動的に生成された行に前の行データを追加します

私はhtmlコードを持っています:

<form>
    <table border="1" id="engagements">
        <tr>
            <th>
                <input type="checkbox" onclick="checkAll(this)" />
            </th>
            <th>Organization</th>
            <th>Project</th>
            <th>Product</th>
            <th>Activity</th>
        </tr>
        <tr>
            <td>
                <input type="checkbox" onclick="checkAll(this)" />
            </td>
            <td>
                <select>
                    <option value = "1">One</option>/>
                     <option value = "1">two</option>/>
            </td>
            <td>
                <input type="text" />
            </td>
            <td>
                <input type="text" />
            </td>
            <td>
                <input type="text" />
            </td>
        </tr>
    </table>
    <select name="mode" id="mode">
        <option value="">Add More Rows with Same Data as Above</option>
        <option value="1">1 More</option>
        <option value="2">2 More</option>
        <option value="3">3 More</option>
        <option value="4">4 More</option>
        <option value="5">5 More</option>
    </select>
</form>

およびスクリプト コード:

$("#mode").on('change', function () {
    var rows = parseInt(this.value);
    console.log(rows);
    var lastRow;
    for (var i = 0; i < rows; i++) {
        lastRow = $('#engagements tr').last().clone();
        $('#engagements tr').last().after(lastRow);
    }
});

JS フィドル: http://jsfiddle.net/jW6eL/3/

4

2 に答える 2

3

パフォーマンス上の理由から、要素のクローンを作成している間、jquery は選択を保持しません。ただし、使用してみることができます

    .clone(true) 

これにより、すべてのイベントとデータがドロップダウンでコピーされます。このようにして、イベントを使用し、ドロップダウンで最後のオプションを選択できます。

于 2013-07-22T13:55:20.250 に答える