Javascript 带有下拉列表的动态文本框
我正在做一个测验系统,根据下拉列表的选择值,我可以显示一些文本框。 示例:主题有4个单元,我将有4个文本框来填写每个单元的一些问题。 我的代码不工作: 控制器:Javascript 带有下拉列表的动态文本框,javascript,laravel,Javascript,Laravel,我正在做一个测验系统,根据下拉列表的选择值,我可以显示一些文本框。 示例:主题有4个单元,我将有4个文本框来填写每个单元的一些问题。 我的代码不工作: 控制器: public function getunit($id){ $units= Question::groupBy('unit')->select('unit', Question::raw('count(id) as Total'))->where('id_subject','=', $id)->get()-&g
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);
}
可以使用此方法动态创建文本框 设html=“” $。每个([“value1”、[“value2”、“value3”、“value4”]],函数(index1,value1) { html+=“” $。每个(值1,函数(index2,值2) { 在此处添加文本框 })); html+=“” list.append(html)
Route::post('get-unit', 'TestController@getunit')->name('test.getunit');
Route::resource('test', TestController::class);