如何从下拉菜单中选择多项选项

时间:2018-03-12 07:02:35

标签: javascript angularjs select html-select

我有一个输入框,除此之外,我有图像。 点击图片后,我打开一个下拉菜单,其中包含一些来自控制器的选项。如果我从下拉列表中选择某些内容,则会在文本框中输入。就像我们可以从下拉列表中插入多个选项,逗号分隔。 我可以从下拉列表中输入单个选定选项到文本框。

我需要帮助的是:

  1. 如何多选选项并输入文本框
  2. 如何在进入时选择复制选项。
  3. 这是我在Angular js中需要做的全部。

    以下是我的控制器:

                  $scope.onDropDdownChange = function (dropdownFieldName, textFiledName,splitSelItem) {
                        let rpInfo = $scope.restrictedPartyInfo;
                        let selItem = rpInfo[dropdownFieldName] ? (splitSelItem ? (rpInfo[dropdownFieldName]).split("-")[0] : rpInfo[dropdownFieldName]) : '';
                        if(rpInfo[textFiledName]) {
                            var isExist = rpInfo[textFiledName].indexOf(selItem);                           
                            if(isExist)
                                rpInfo[textFiledName] += ',' + selItem;                         
                        } else {
                            rpInfo[textFiledName] = selItem;
                        }
                    }; 
    

    以下是我的HTML部分:

                <td width="10%" class="gridInfoAddEditTableData">Customer Types*</td>
                    <td width="9%" class="gridInfoAddEditTableData">                    
                        <img id="followbutton" ng-src="{{followButtonImg}}" alt="Show Hide"
                        ng-click="ShowHideCusttyp();toggleImageCustTyp()"  ng-model="restrictedPartyInfo.ShowHideCusttyp">
                        <input type="text" id="customertypes" style="width:54%" ng-click="ShowHideCusttyp();"
                        ng-model="restrictedPartyInfo.customerType"
                        ng-keydown="ShowHideCusttyp();"/>
                    </td>
    
    
              <td align="center" class="gridInfoAddEditTableData">              
                     <select  multiple ng-show = "Visible" name="customerTypess"  ng-change="ShowHideCusttyp();onDropDdownChange('customerTypes','customerType',false);"
                    ng-model="restrictedPartyInfo.customerTypes"
                    style="position: relative; align: center; top: 1px; left: 245%; width: 150%; height: 65px;"
                    ng-init="customerTypess ='val_customerTypess'" >
                        <option ng-repeat="custtyp in customerTypes" value="{{custtyp.clientTypeCode}}">{{custtyp.clientTypeCode}} – {{custtyp.clientDescription}}</option>
                    </select>               
                </td>
    

1 个答案:

答案 0 :(得分:0)

1。 使用html的多个标记,您必须使用Ctrl +鼠标单击 https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select_multiple 您将获得一系列选定的数据,这些数据可以用逗号分隔的方式显示

2。 从下拉列表中选择多个数据后,可以使用循环 您可以在选择期间限制,如果已经在数组中然后删除,NG更改可能会有所帮助 删除来自Server :)的重复数据