如何创建禁用所有元素到 div 元素的指令 [英] How to create a directive for disable all elements into div element

查看:20
本文介绍了如何创建禁用所有元素到 div 元素的指令的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何创建禁用所有元素到 div 元素的指令?

像这样:

<input type="text"/><input type="url"/><div><input type="text"/><input type="url"/>

<div>

有可能吗?我不知道.

 角度.module('uiRouterApp.ctrl.add', ['uiRouterApp.ctrl.customDirective']).controller('addCtrl', ['$范围','$位置','$stateParams','$状态',函数($scope,$location,$stateParams,$state){$scope.state = {};}]).directive('divDisabled', function () {返回 {范围: {divDisabledCondition: '@'},链接:函数(范围、元素、属性){}};});

更新:

请看这个:

 <div class="col-sm-12 ng-isolate-scope" selected-object="SelectedAutoComplete" local-data="requirements.Item1" search-fields="NameFa,NameEn" title-field="NameFa" minlength="2" field-required="true" image-field="ImageUrl" disable-auto-compelete="response.State=='Success'||response.State=='Error'||response.State=='警告'"><div class="angucomplete-holder"><input id="_value" ng-model="searchStr" type="text" placeholder="select" class="form-control ng-dirty" ng-focus="resetHideResults()" ng-blur="hideResults()" autocapitalize="off" autocorrect="off" autocomplete="off" ng-change="inputChangeHandler(searchStr)" ng-disabled="response.State=='成功'||response.State=='错误'||response.State=='警告'" style=""><!-- ngIf: showDropdown -->

指令:

.directive('contentsDisabled', function() {返回 {编译:函数(tElem,tAttrs){var input = tElem.find('input');for (var i = 0; i 

为什么当 state 为 'Success' 或 'Error' 或 'Warning' 输入未禁用时?

解决方案

你也可以使用标签字段集:

<fieldset ng-disable="foo"><input name="the_one"/><输入名称="the_second"/></fieldset><input name="the_thrid"/></表单>

这样,当变量 foo 为 TRUE 时,输入the_one"和the_second"将被禁用.

how to create a directive for disable all elements into div element ?

something like this :

<div div-disabled div-disabled-condition="state=='Stack'||state=='Over'||state=='Flow'">
  <input type="text"/>
  <input type="url"/>
  <div>
    <input type="text"/>
    <input type="url"/>
  </div>
<div>

Is it possible? I have no idea .

     angular
    .module('uiRouterApp.ctrl.add', ['uiRouterApp.ctrl.customDirective'])
    .controller('addCtrl', [
        '$scope',
        '$location',
        '$stateParams',
        '$state',
        function ($scope, $location, $stateParams, $state) {
            $scope.state = {};
         }
    ]).directive('divDisabled', function () {
        return {
        scope: {
              divDisabledCondition: '@'
             },
            link: function (scope, element, attrs) {

            }
        };
    });

Update :

please see this :

   <div class="col-sm-12 ng-isolate-scope" selected-object="SelectedAutoComplete" local-data="requirements.Item1" search-fields="NameFa,NameEn" title-field="NameFa" minlength="2" field-required="true" image-field="ImageUrl" disable-auto-compelete="response.State=='Success'||response.State=='Error'||response.State=='Warning'">

<div class="angucomplete-holder">
  <input id="_value" ng-model="searchStr" type="text" placeholder="select" class="form-control ng-dirty" ng-focus="resetHideResults()" ng-blur="hideResults()" autocapitalize="off" autocorrect="off" autocomplete="off" ng-change="inputChangeHandler(searchStr)" ng-disabled="response.State=='Success'||response.State=='Error'||response.State=='Warning'" style=""> 

  <!-- ngIf: showDropdown -->
  </div>
  </div>

directive :

.directive('contentsDisabled', function() {
        return {
            compile: function(tElem, tAttrs) {
                var inputs = tElem.find('input');
                for (var i = 0; i < inputs.length; i++) {
                    inputs.attr('ng-disabled', tAttrs['disableAutoCompelete']);
                }
            }
        }
    })

why When the state is 'Success' or 'Error' or 'Warning' Input not disabled ?

解决方案

You also can use a tag fieldset :

<form>
    <fieldset ng-disable="foo">
        <input name="the_one"/>
        <input name="the_second"/>
    </fieldset>
    <input name="the_thrid"/>
</form>

With this way, when the variable foo is TRUE, inputs "the_one" and "the_second" will be disabled.

这篇关于如何创建禁用所有元素到 div 元素的指令的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆