簡體   English   中英

帶有下拉列表的動態文本框

[英]Dynamic text boxes with dropdown list

我正在制作一個測驗系統,基於從下拉列表中選擇的值,我可以顯示許多文本框。 示例:主題有 4 個單元,我將有 4 個文本框來為每個單元填寫一些問題。 我的代碼不起作用:Controller:

public function getunit($id){
    $units= Question::groupBy('unit')->select('unit', Question::raw('count(id) as Total'))->where('id_subject','=', $id)->get()->toArray();
    return view('Test::test', compact('units'));
}

刀片文件:

$('select').select();
function get_units() {
    var id = $('#selectID').val();
    var list = $('#list-unit');
    list.empty();
    var url = "{{ route('test.getunit') }}"+'/'+id;
    var success = function (result) {
        if (result.length <= 0) {
            var item = '<div class="input-field"><input type="text" disabled value="Môn này hiện chưa có câu hỏi nào"></div>';
            list.append(item);
        } else {
            for (i = 0; i < result.length; i++) {
                var item = '<div class="input-field"><label for="unit-' + result[i].unit+ '">Nhập số câu hỏi chương ' + result[i].unit+ ' (có ' + result[i].Total + ' câu) <span class="failed">(*)</span></label><input type="number" max="' + result[i].Total + '" class="unit_input" onchange="set_sum(' + result[i].Total + ')"  name="unit-' + result[i].unit+ '" id="unit-' + result[i].unit+ '" required></div>';
                list.append(item);
            }
        }
    };
    $.get(url, success);
}

路線:

Route::post('get-unit', 'TestController@getunit')->name('test.getunit');

Route::resource('test', TestController::class);

您可以使用此方法動態創建文本框

讓 html="";

$.each([ "value1", ["value2","value3","value4"] ], function( index1, value1 ) {

html+="";

$.each(value1, function(index2, value2) {

在此處添加文本框

}); html+="";

list.append(html);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM