【发布时间】:2018-03-02 07:47:53
【问题描述】:
我卡住了选择框预选值。
我有学生数据存储在数据库中,学科数据存储在这种形式: ["23","45","3"]
HTML 看起来像:
<select class="form-control selecBox" name="classSubject[]" multiple required id="classSubj">
<option ng-repeat="subject in form.allsubjects" value="{{subject.id}}" ng-selected="form.classSubject.indexOf(subject.id)>-1">{{subject.subjectTitle}}</option>
</select>
JS 文件:
$scope.edit = function(id){
showHideLoad();
dataFactory.httpRequest('index.php/students/'+id).then(function(data) {
//console.log("Say No To curruption:"+JSON.stringify(data, null,null));
//console.dir(data)
$scope.changeView('edit');
$scope.form = data;
//data.classSubject.toString();
//data.classSubject=data.classSubject.replace("[", "");
//data.classSubject=data.classSubject.replace("]", "");
//data.classSubject=data.classSubject.split(",");
//data.classSubject="16";
//data.classSubject=data.classSubject.split(",");
$scope.SelectedSubjects = data.classSubject;//"37";//[37,38,39];//data.classSubject[0];
console.log(data.classSubject);
showHideLoad(true);
});
}
PHP 控制器:
function fetch($id){
$data = \User::where('role','student')->where('id',$id)->first()->toArray();
$data['birthday'] = $this->panelInit->unix_to_date($data['birthday']);
//$data['classSubject'] =($data['subjects']);
$data['comVia'] = json_decode($data['comVia'],true);
$data['classSubject']=json_decode($data['subjects'],true);
if(!is_array($data['comVia'])){
$data['comVia'] = array();
}
$data['academicYear'] = array();
$academicYear = \academic_year::get();
foreach ($academicYear as $value) {
$data['academicYear'][$value->id] = $value->yearTitle;
}
$DashboardController = new DashboardController();
$data['studentAcademicYears'] = array();
$academicYear = \student_academic_years::where('studentId',$id)->orderBy('id','ASC')->get();
foreach ($academicYear as $value) {
$data['studentAcademicYears'][] = array("id"=>$value->academicYearId,"default"=>$value->classId,"defSection"=>$value->sectionId,"classes"=>\classes::where('classAcademicYear',$value->academicYearId)->get()->toArray(),"classSections"=>$DashboardController->classesList($value->academicYearId) );
}
$data['allsubjects']=$subjects=\DB::table('subject')->get();
//$data['classSubject'] =json_encode($data['allsubjects'][12],true);
return $data;
}
enter code here
这里的问题是:如果 subject.id=3 那么选项“3”和“23”都选择了它必须只选择一个选项值(3)的选项
【问题讨论】:
-
你能分享整个选择元素吗
-
请添加更多您已经拥有的详细信息和代码
-
我在下面的 cmets 中添加了更多屏幕截图
标签: angularjs