angularjs中下拉框select option預設值

來源:互聯網
上載者:User

今天又被一個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的屬性

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.