单击AngularJS / bootstrap外部后选择empties

时间:2015-10-31 22:08:02

标签: javascript html angularjs twitter-bootstrap

我是AngularJS的新手,目前我遇到了选择问题。

我正在编辑现有的用户信息,当选择配置文件(perfil)或企业(empresa)它开始空白时,这不是问题,问题是如果我在任何输入外部点击,则选中选项从视图中消失(我已经检查过并且数据确实绑定了)。 例如:

Profile selected

After Clicking outside any input (i can click and fill other inputs or selects with no problem)

它在这里的代码:

/*This is how i obtain the profiles from a table, this returns an array of objects which contains "codigo","descripcion","idPerfil"*/
function listaperfiles(){
            var listaperf= portalServicios.listaperfiles(mntusuarioCtrl.id).$promise;

            listaperf.then(function(respuesta){
                mntusuarioCtrl.perfiles=respuesta;
            });

            listaperf.catch(function(respuesta){
                $log.error("Perfiles Error");
                $log.error(respuesta);
            });
        }

/*This function obtains a list of registered users from a table, this contains "nombre","apellidos","codigo","clave","idUsuario","tblPerfil","tblEmpresa", "estatus","email", "seleccionado" is just the user selected fomr that list that is going to be modified or deleted*/
function listaUsuarios(data){
            var listausr = ssmeServicios.obtenusuarios(data).$promise;

            listausr.then(function (respuesta){
                $log.info(respuesta);
                mntusuarioCtrl.usuarios=respuesta;
            });

            listausr.catch(function(respuesta){
                $log.error(respuesta);
            })
        }
                    <div class="form-group">
                        <label for="perfil" class="col-sm-3 control-label" style="padding-right: 10px">Perfil:</label>
                        <div class="col-sm-9">
                             <select required="true"
                                    id="perfil"
                                    ng-model="mntusuarioCtrl.seleccionado.tblPerfil"
                                    ng-options="opcion.descripcion for opcion in mntusuarioCtrl.perfiles">
                                 <option value="" select hidden/>
                             </select>
                        </div>
                    </div>

这只是一个小麻烦,但一直困扰着我!

如果需要,我可以提供有关代码或任何内容的更多信息。

感谢您的时间!

1 个答案:

答案 0 :(得分:0)

这是一个带有选择示例的plunker,使用与您的代码类似的结构进行修改:

http://plnkr.co/edit/sOqtxVz2utHUXhw0hOQd

希望它有所帮助!如果没有,请解释一下你的解决方案。一个掠夺者可以帮助很多!

修改

现在有了你的傻瓜,我可以看到你的错误。这是一个有效的叉车:http://plnkr.co/edit/sm1DhanxJpLJ4Yrkhucx?p=preview

Angular查找对象相等性以将其与您的语法绑定,并且只有当两个对象指向相同的引用时它们才相等。因此它无法加载所选值。但是,使用track by解决了这个问题。