前提・実現したいこと
複数のテキストエリアに入力した値を、一つのカラムに保存したい
※「,」(カンマ区切り)で保存
該当のソースコード
<script> function subject(o){ switch($(o).val()){ default: var html = ''; var input_name = "SubjectDetails[0][choose_course]"; var textarea = $('textarea[name="SubjectDetails[0][answer]"]').val(); var data_array = textarea.split(/\r\n|\r|\n/); for(let i = 0; i < data_array.length; i++) { html += '<tr><td>' + (i + 1) + '</td><td>' + data_array[i] + '</td><td><input type="text" name="' + input_name + '" size="5"></td></tr>'; } $('#choose_course').html(html); break; } } </script> ・ ・ ・ <div id="choose_course_area"> <h3>選択</h3> <table class="st_table"> <thead> <tr> <th>No.</th> <th>希望科目</th> <th>希望コース</th> </tr> </thead> <tbody id="choose_course"></tbody> </table> </div>
試したこと
別枠にあるテキストエリアに改行で希望科目を入力すると、それぞれの希望科目ごとに希望コース入力のテキストエリアが改行で出現します。
データベースにあるchoose_courseという一つのカラムに、入力した複数の希望コースを「,」(カンマ区切り)で保存したいです。
今だと先頭に入力した値などしか保存されないため、explodeなど書き足して試みたのですが書き方が悪いのか上手くいきません。。
【イメージ】
希望科目に入力した科目が下部に出力され、希望コースが入力できるような感じになっています。
補足情報(FW/ツールのバージョンなど)
Cakephp
あなたの回答
tips
プレビュー