鍍金池/ 問(wèn)答/HTML5  PHP  網(wǎng)絡(luò)安全  HTML/ 新創(chuàng)建一個(gè)下拉框選項(xiàng),結(jié)果select2顯示在框里的是空白,下拉菜單里多出來(lái)個(gè)空

新創(chuàng)建一個(gè)下拉框選項(xiàng),結(jié)果select2顯示在框里的是空白,下拉菜單里多出來(lái)個(gè)空白的li

首先是,這個(gè)問(wèn)題在我本地的服務(wù)器是沒(méi)有出錯(cuò)的,但是上傳到公司測(cè)試服務(wù)器就出現(xiàn)bug了。
然后描述下情況:(可以結(jié)合圖片看)
1.首先是本地,點(diǎn)“自定義”按鈕創(chuàng)建個(gè)新的商品品類,然后點(diǎn)擊完成后就會(huì)在下拉框上邊直接顯示剛剛創(chuàng)建的商品品類。以及下拉框的下拉菜單里也會(huì)創(chuàng)建一個(gè)帶有品類的li標(biāo)簽。
2.在測(cè)試服務(wù)器上,走了下上邊的流程,結(jié)果不光在下拉菜單最后添加了我需要添加的li標(biāo)簽(帶有剛剛自定義的商品品類,數(shù)據(jù)傳輸是沒(méi)有問(wèn)題的),還在下拉菜單最開(kāi)始加了個(gè)空白的li標(biāo)簽(如果我選擇其他選項(xiàng)并點(diǎn)擊,那么空白li就會(huì)消失)
3.我看了一下瀏覽器控制臺(tái),正常的創(chuàng)建的都是帶有這個(gè)屬性的aria-activedescendant="select2-addShopCategory-result-f1qf-35",但是服務(wù)器上出錯(cuò)的那個(gè)帶的屬性是這樣的aria-activedescendant="select2-addShopCategory-result-gumr-? number:32 ?"
下邊是圖:
這是本地測(cè)試沒(méi)出錯(cuò)的情況:
圖片描述

圖片描述

這是測(cè)試服務(wù)器上出錯(cuò)的情況:
圖片描述

圖片描述

圖片描述

然后是控制臺(tái)情況:
這是測(cè)試服務(wù)器出錯(cuò)的情況:
圖片描述

這是本地沒(méi)出錯(cuò)的情況:
圖片描述

接下來(lái)是代碼:

    //html代碼
    <div  class="col-sm-5 col-xs-5 ">
         <select id="addShopCategory"  class="form-control selectPd" ng-model="addShopCategorySelect" >
              <option value="">請(qǐng)選擇品類</option>
              <option value="{{shopCategory.id}}" ng-repeat="shopCategory in shopCategoryLists">{{shopCategory.goods_type}}</option>
         </select>
     </div>
     <div  class="col-sm-4  col-xs-4  text-center">
         <button class="btn btn-warning btn-sm mR10 w70" ng-click="addCustomShopCategory()">自定義</button>
         <button class="btn btn-default btn-sm w70" ng-click="delCustomShopCategory(addShopCategorySelect)">刪除</button>
     </div>
     
     //js代碼:(用的angular.js,定義APP、控制器啥的那些就不貼了...)
    // $('#addShopCategory').select2();
    $("#addStoreShopModal").on("shown.bs.modal", function(){
        $("#addShopCategory").select2({
            language: "zh-CN",
            dropdownParent:$("#addStoreShopModal")
        });
    });
    
    //獲取所有的商品品類
    $scope.getAllShopCategoryLists = function(){
        $http.get('/shop/get-goods-type-data').then(function(response){
            $scope.shopCategoryLists = response.data.data;
        });
    }
    //獲取自定義添加商品類型數(shù)據(jù)
    $scope.getAddCustomShopCategoryData = function(){
        return {
            typeName       :$scope.customShopCategoryName!= undefined && $scope.customShopCategoryName != ''? $scope.customShopCategoryName :null,
        }
    }
    //完成自定義商品品類
    $scope.customShopCategoryComplete = function(){
        if($scope.customShopCategoryName== undefined || $scope.customShopCategoryName == ''|| $scope.customShopCategoryName ==null){
            Message.warning('請(qǐng)輸入自定義商品品類');
            return;
        }
        $http({
            url:'/shop/set-goods-type',
            method:'POST',
            data: $.param($scope.getAddCustomShopCategoryData()),
            headers: {'Content-Type': 'application/x-www-form-urlencoded'}
        }).then(function(response){
            if(response.data.status == "success"){
                Message.success(response.data.data);
                //如果自定義添加成功了就把自定義品類的模態(tài)框給關(guān)閉
                $('#customShopCategoryModal').modal('hide');
                //獲取所有的商品品類
                $scope.getAllShopCategoryLists();
                //品類id為添加成功的品類的id
                //addShopCategorySelect是select的ng-model的值,也是刪除按鈕里傳的參數(shù)
                $scope.addShopCategorySelect  = response.data.id;
            }else{
                Message.warning(response.data.data);
            }
        });
    }
回答
編輯回答
情皺

用ng-options啊

https://docs.angularjs.org/ap...

<select ng-options="item as item.label for item in items track by item.id" ng-model="selected"></select>
2018年3月1日 04:28