首页  >  文章  >  web前端  >  Angularjs自定义一个可输入的下拉框组件(代码示例)

Angularjs自定义一个可输入的下拉框组件(代码示例)

青灯夜游
青灯夜游转载
2020-12-24 17:50:092754浏览

下面本篇文章给大家介绍一下Angularjs自定义一个可输入的下拉框组件的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

Angularjs自定义一个可输入的下拉框组件(代码示例)

相关推荐:《angularjs教程

在 angularjs 中自定义一个可输入的下拉框组件,组件的创建及引入如下。

新建 insertSelect.html 文件

<style type="text/css">
    .insert-select {
        position: relative;
    }
 
    .input-box {
        position: absolute;
        height: calc(100% - 4px);
        width: calc(100% - 25px);
        top: 2px;
        left: 2px;
        padding-left: 10px;
        outline: none !important;
        border-radius: 4px !important;
        border: none !important;
    }
 
</style>
 
<!--可输入下拉框-->
<div class="insert-select">
    <select ng-attr-placeholder="{{placeholder}}" class="form-control"
            chosen ng-model="modelData"
            ng-options="item for item in optionList">
        <option value=""></option>
    </select>
 
    <input type="text" class="input-box"
           ng-attr-placeholder="{{placeholder}}"
           ng-model="modelData">
</div>

directive 自定义指令

//可输入select框
angular.module("controllers")
.directive("insertSelect", [function () {
    return {
        restrict: &#39;AE&#39;,
        templateUrl: &#39;template/common/insertSelect.html&#39;,
        scope: {
            modelData: &#39;=modelData&#39;,        
            optionList: &#39;=optionList&#39;,     
            placeholder: &#39;=placeholder&#39;,    //placeholder 可由引入页面传入
        },
        link: function ($scope, $elem) {
            //
        },
        controller: ["$scope", function ($scope) {
 
        }]
    }
}]);

页面引入 insertSelect 组件

<insert-select model-data="formData"
               option-list="successCodeList"
               placeholder="&#39;请选择&#39;">
</insert-select>

更多编程相关知识,请访问:编程教学!!

以上是Angularjs自定义一个可输入的下拉框组件(代码示例)的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:csdn.net。如有侵权,请联系admin@php.cn删除