国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

angularjs下拉框空白的解決辦法

2019-11-19 16:18:10
字體:
供稿:網(wǎng)友

搜索angularjs下拉框空白,可以出現(xiàn)很多解決方案,但是對于靜態(tài)字段來說,網(wǎng)上目前還沒有找到解決方案,如下:

<select class="form-control" ng-model="UserState"  ng-init="UserState=0"> <option value="-1">選擇狀態(tài)</option> <option value="0">在職</option> <option value="1">離職</option> </select>

  如果要按照網(wǎng)上的方法來解決,首先需要把下拉選項存放到一個對象數(shù)組當中,對于一個兩個下拉框還好說,如果項目當中有很多這種下拉框,就要費好大勁了。最簡單粗暴的方法是修改angularjs源代碼,不再生成空白符。奈何功力有限,未能找到相應(yīng)添加空白行的地方,不過值得欣慰的是,發(fā)現(xiàn)出現(xiàn)空白符是因為使用了ng-model的原因,干脆寫個指令來替代ng-model的功能也可以解決下拉空白的問題,于是寫了一個指令:

app.directive("dModel",function () {  return {   restrict:'A',   compile:function(element, attrs, transclude){    console.log(transclude);    var dModel=attrs["dModel"];    return{     pre:function(scope, iElement, iAttrs){      var selectValue=scope[dModel]+"";      if(selectValue)      {       var options=element.children();       for(var i=0;i<options.length;i++)       {        if(selectValue==options[i].value)        {         options[i].setAttribute("selected",true);         break;        }       }      }     },     post:function(scope, iElement, iAttrs){      element.on("change",function () {       var selectValue=this.value;       scope.$apply(function () {        scope[dModel]= selectValue;       });      })     }    }   }  } });

   用該指令替代ng-model即可實現(xiàn)相同的功能,同時不會出現(xiàn)下拉空白,當然,這個指令畢竟是自己隨便寫的幾行代碼,遠遠不如ng-model強大,比如動態(tài)修改指令綁定的值來改變選中項還不能實現(xiàn),僅僅可以在第一次初始化時綁定選中項,另外也不支持ng-selected。如果讀者有興趣,可以自己實現(xiàn)后續(xù)的功能,對于我來說,已經(jīng)可以滿足需要了。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 曲阜市| 长兴县| 西贡区| 若羌县| 巩留县| 大关县| 文登市| 买车| 漳州市| 山东| 庆元县| 无棣县| 绍兴市| 佛教| 财经| 海丰县| 阿克苏市| 临城县| 安岳县| 上蔡县| 新民市| 疏附县| 罗田县| 屯门区| 普洱| 丹江口市| 和田县| 密云县| 望都县| 安泽县| 盘锦市| 林口县| 逊克县| 灵石县| 刚察县| 大冶市| 封开县| 兴隆县| 临城县| 香河县| 景宁|