angularjs中下拉框select option默认值

今天又被一个angularjs的一个问题给难住了,有花了比较多的时间去解决

option ng-repeat多空白项

<select class="form-control" ng-model="posts.website">
<option value="0">请选择网站</option>
<option ng-repeat="row in list.websites" value="{{row.websites_id}}" >{{row.websites_name}}</option>
</select>
请看上面的代码,ng-repeat在循环的时候发现了一个空白的选项,chrome解析出来代码是

chrome解析错误代码

<option value="? undefined:undefined ?"></option>

然后查了list.websites对象的值貌似没有问题

然后google一下,这里又要吐槽一下百度查不到结果
发现要初始化posts.website的值,于是用ng-init初始一下值,把代码修改成

<select class="form-control" ng-model="posts.website" ng-init="posts.website='0'">
<option value="0">请选择网站</option>
<option ng-repeat="row in list.websites" value="{{row.websites_id}}" >{{row.websites_name}}</option>
</select>

正常了,好坑啊

这文章里讲了怎么解决添加页面的option多出来的问题

在修改页面里我也是安装这个方法去处理,但是不行,给ng-model附上值就是显示不了默认值,最后在自己的摸索下解决了这个问题

正确方面

<select ng-model="posts.website" ng-options="c.websites_id as c.websites_name for c in posts.websites" class="form-control" ng-selected="c.websites_id==posts.website">
<option value="">请选择网站</option>
</select>

游览器解析的代码为

<select ng-model="posts.website" ng-options="c.websites_id as c.websites_name   for c in posts.websites" class="form-control ng-pristine ng-valid ng-touched" ng-selected="c.websites_id==posts.website">
<option value="" class="" selected="selected">请选择网站</option>
<option label="fdsaffd" value="number:4">fdsaffd</option>
<option label="fdsaffdsa" value="number:3">fdsaffdsa</option>
<option label="fdsaf" value="number:2">fdsaf</option>
<option label="小松博客" value="number:1" selected="selected">小松博客</option>
</select>
默认的“小松博客”已经添加了selected的属性

时间: 2024-11-05 16:40:23

angularjs中下拉框select option默认值的相关文章

SelecT下拉框选中和取值的解决方法_jquery

 Select下拉框的问题,想在选择一个选项后,前台显示做出变动,并且知道选择的是第几个选项. 这个很好解决: 如下: <div class="page-header"> <div class="form-horizontal"> <div class="control-label col-lg-0"> </div> <div class="col-lg-2"> &l

jquery-select下拉表中 有默认值 如何排除默认值判断select下表是否选择没选择提示

问题描述 select下拉表中 有默认值 如何排除默认值判断select下表是否选择没选择提示 <td> <select id=""applicationamount3"" name=""applicationamount""> <option value=""2"" selected=""selected"" >

select-使用AngularJS时下拉框问题

问题描述 使用AngularJS时下拉框问题 使用AngularJS绑定下拉框时遇到一个问题,还请各位大大帮忙看看 <br> var app = angular.module("myApp", []);<br> app.controller("controller", ["$scope", function ($scope) {<br> $scope.person = [<br> { "i

MVC中下拉框显示枚举项

原文:MVC中下拉框显示枚举项 本篇将通过3种方式,把枚举项上的自定义属性填充到下拉框: 1.通过控制器返回List<SelectListItem>类型给前台视图 2.通过为枚举类型属性打上UIHint属性让模版显示枚举项 3.通过自定义元数据提供器DataAnnotationsModelMetadataProvider让模版显示枚举项   我们经常会把类型为Int16的属性通过枚举来获得.比如: public class SomeClass { public int16 Status{get

数据-ajax 根据一个下拉框的值的不同 另一个下拉框对应显示的值也不同

问题描述 ajax 根据一个下拉框的值的不同 另一个下拉框对应显示的值也不同 图片就是这样的,项目的类别有商户和银行两种,我要根据选择商户还是银行,让下边对应的选择已有商户 的下拉框中显示不同的数据,数据都需要通过后台去数据库里查的. 这个是不是要ajax啊?谁能告诉告诉我怎么写 .急急急 ..在线等好心人..... 解决方案 html代码 <tr> <td style="width:15%"> 一级 </td> <td style="

隐藏-Ext 根据下拉框选择不同的值 显示不同的文本框

问题描述 Ext 根据下拉框选择不同的值 显示不同的文本框 Ext 根据下拉框选择不同的值 显示不同的文本框 只显示了文本框没有显示fieldLabel Ext.onReady(function(){ this.username = { id:'usernameId', tabIndex:4, xtype:'textfield', fieldLabel: '密码', cls:'x-upper-text', width:80, name: 'username', maxLength:25, upp

html标签-前台遍历list得到select标签,怎么根据list中值的不同使得select的默认值不同

问题描述 前台遍历list得到select标签,怎么根据list中值的不同使得select的默认值不同 如:遍历list后"issend"有0或1,要求每个select的默认值在0时为"不显示",1时为"显示". 解决方案 html标签的显示与否看disable属性 解决方案二: 比如 <select id="select" name ="select"> <option value=&q

hibernate-select下拉框里的元素值对应数据库

问题描述 select下拉框里的元素值对应数据库 我想在点击不同大区的时候切换不同的数据库,请问怎么实现啊,我用的是hibernate的连接方式,数据库是MySQL.各位大神们,主要我是要不同的数据库,而不是表.新手求指导啊!!! 解决方案 可以配置多个数据源,通过调用不同模板实现,网上资料很多.百度搜索动态切换数据源. 解决方案二: 不太明白你的意思.一个用户一般只能对应一个数据库啊. 解决方案三: 是可以对应多个数据库的吧!有听说过这方面的知识,但是我不太会,等着大牛来说一下吧!

extjs如何激活下拉框select事件

问题描述 extjs如何激活下拉框select事件 解决方案 combox.fireEvent('select',combox);解决方案二:你是想设置值么combox.setValue(value);