ユーザー入力/選択時にテーブルに行を追加する必要があります。jQuery は使用できません。Mootools 1.3.2 は問題ありません。
関数 add_copy を実行するフィールド<select id="copy_selected" class="select" onchange="add_copy()" >
があります。onchange
HTMLは(フィドルはこちら)
<table>
<tr>
<td class="side" id="copy_settings_desc">Wich to copy?</td>
<td>
<select id="copy_selected" class="select" onchange="add_copy()">
<option value="0">test 1</option>
<option value="1">test 2</option>
</select>
</td>
</tr>
<tr id="copy_expandable"></tr>
動作しないスクリプトは次のとおりです。
var copy_counter = 0;
function add_copy() {
copy_counter = copy_counter + 1;
var addition_text = document.getElementById('copy_selected').options[document.getElementById('copy_selected').selectedIndex].text;
var addition_id = document.getElementById("copy_selected").value;
new_addition = '<td></td>' + '<td></td>' + '</tr><tr>' +
'<td class="side">' + document.getElementById("copy_settings_desc").innerHTML + '</td>' +
'<td>' + addition_text +
'<input type="hidden" name="copy_to[copy_counter]" value=' + addition_id + '>' +
'</td>';
document.getElementById("copy_expandable").innerHTML = document.getElementById("copy_expandable").innerHTML + new_addition;
}
スクリプトでhtmlを書くのは良い習慣ではないことを理解しています。(そしてこの場合は機能していません)
これを行うにはどうすればよいでしょうか。ありがとうございました。
編集:連結を修正しました(指摘してくれてありがとう)。<tr></tr>
新しく選択するたびにその行が無視されていることに気付きましたか? なぜ?