所以,我试图从服务器读取一个选项列表,并将其提供给标签,第一个选项是默认选项 - 这是非常重要的事情 - 但我得到的只是是模型设置正确,但在选择它显示空白!,我不知道为什么会这样!
我已经尝试了很多SO SO {,here,here和here。
视图: -
<select ng-options="option as option.Name for option in options track by option.ID" ng-model="selected">
控制器: -
DataService.getOptionsFromServer().then(function (result) {
//console.log(result.data);
$scope.options = result.data;
$scope.selected = $scope.options[0];
console.log($scope.selected);
}, function (err) {
console.error(err);
});
的
console.log($scope.selected);
表示所选内容正确设置! 有什么帮助吗?
Update1:似乎问题是angular和jquery-mobile之间的兼容性(我没有添加:@),有人知道这件事吗?
Update2:在删除 jquery.mobile.min.js 时,它可以正常工作。不幸的是,我需要把它扔出去。
Update3:问题是JQM会产生一个跨度来显示所选的值,这就是问题所在!我已经绑定了选择,而不是跨度。 问题是我现在无法绑定跨度,因此,JQM会在运行时生成跨度:(这就是为什么在评论JQM时它运行良好。
已更新4:已解决:D,下面给出的解决方案供将来参考。
答案 0 :(得分:1)
问题是JQM本身并没有显示所选的值,而是获取所选的值,并在运行时放入一个范围,然后完全隐藏选择,相信我,它花了我&gt; 12个小时难以学习!
因此,为了让JQM从选择中重新获取所选值并将其发送到显示范围,您必须调用:
jQuery("#SelectId").selectmenu("refresh", true);
请注意,如果您像我一样使用角度曲线,最好使用&#34; jQuery&#34;不是&#34; $&#34;避免角度和jQuery之间的冲突。
不要轻易接受这一行的消息:D,花费超过一个工作日来获得它:D,希望它会有所帮助:D。importent ref:here。
另请注意:如果您打算多次使用该选项,则可以制作角度指令:D。
答案 1 :(得分:0)
也许你没有从服务器获取任何数据,你能检查一下吗?