Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 在md autocomplete中搜索时如何更改选项_Angularjs_Angularjs Directive_Angularjs Ng Repeat_Md Autocomplete - Fatal编程技术网

Angularjs 在md autocomplete中搜索时如何更改选项

Angularjs 在md autocomplete中搜索时如何更改选项,angularjs,angularjs-directive,angularjs-ng-repeat,md-autocomplete,Angularjs,Angularjs Directive,Angularjs Ng Repeat,Md Autocomplete,如何在键入时更改选项。当我键入筛选器不工作时,它工作不正常。显示所有列表我希望根据搜索更改列表文本。请帮助我完成此操作 <md-autocomplete ng-disabled="Ctrlmain.isDisabled" md-no-cache="Ctrlmain.noCache" md-selected-item="Ctrlmain.selectedItem" md-search-text="Ctrlmain.campaignname" md-se

如何在键入时更改选项。当我键入筛选器不工作时,它工作不正常。显示所有列表我希望根据搜索更改列表文本。请帮助我完成此操作

<md-autocomplete
    ng-disabled="Ctrlmain.isDisabled"
    md-no-cache="Ctrlmain.noCache"
    md-selected-item="Ctrlmain.selectedItem"
    md-search-text="Ctrlmain.campaignname"
    md-selected-item-change="Ctrlmain.filltextbox(item)"
    md-items="item in Ctrlmain.getMatches(Ctrlmain.campaignname)  | unique:'campaign_name'"
    md-item-text="item.campaign_name"
    md-min-length="0"
    placeholder="Pick an Angular repository"
    md-menu-class="autocomplete-custom-template">
        <md-item-template>
            <span class="item-title">                                
                <span> {{item.campaign_name}} </span>
            </span>
        </md-item-template>
</md-autocomplete>
在md搜索文本更改时返回匹配项无效。您的md自动完成已绑定到Ctrlmian.viewData。如果这样做有效,您必须在完成函数后修改所述数组。此外,当您试图返回output.campaign\u name(其中output是数组)时,代码基本上是错误的。或者你也可以这样尝试

<md-autocomplete
    ng-disabled="Ctrlmain.isDisabled"
    md-no-cache="Ctrlmain.noCache"
    md-selected-item="Ctrlmain.selectedItem"
    md-search-text="Ctrlmain.campaignname"
    md-selected-item-change="Ctrlmain.filltextbox(item)"
    md-items="item in Ctrlmain.getMatches(Ctrlmain.campaignname)  | unique:'campaign_name'"
    md-item-text="item.campaign_name"
    md-min-length="0"
    placeholder="Pick an Angular repository"
    md-menu-class="autocomplete-custom-template">
        <md-item-template>
            <span class="item-title">                                
                <span> {{item.campaign_name}} </span>
            </span>
        </md-item-template>
</md-autocomplete>
<md-autocomplete
    ng-disabled="Ctrlmain.isDisabled"
    md-no-cache="Ctrlmain.noCache"
    md-selected-item="Ctrlmain.selectedItem"
    md-search-text="Ctrlmain.campaignname"
    md-selected-item-change="Ctrlmain.filltextbox(item)"
    md-items="item in Ctrlmain.getMatches(Ctrlmain.campaignname)  | unique:'campaign_name'"
    md-item-text="item.campaign_name"
    md-min-length="0"
    placeholder="Pick an Angular repository"
    md-menu-class="autocomplete-custom-template">
        <md-item-template>
            <span class="item-title">                                
                <span> {{item.campaign_name}} </span>
            </span>
        </md-item-template>
</md-autocomplete>
getMatches(str) {
    var output = [];
    angular.forEach(this.viewData,function(campaignname) {
        if(campaignname.campaign_name.toLowerCase().indexOf(str.toLowerCase())>=0) {
            output.push(campaignname);
        };
    });
    return output;
}