LINUX.ORG.RU

как получить значение элемента?

 , ,


0

1

Господа, спасибо всем кто ответит. Для меня всё что связано с фронтом сущий кошмар… Чтобы не тратить Ваше время, опишу подробнее. С большими кусками кода. У меня есть 42 чек-бокса по которым мне надо включать и отключать видимость столбцов. Вот HTML для чекбоксов:

<div class="row">
    <div class="col-1">
        <input type="checkbox" class="" data-column="1" id="depotID" ng-change="vm.coluVisi()" ng-model="vm.depotID">
        <label class="" for="">DepotID</label>
    </div>
    <div class="col-1">
        <input type="checkbox" class="" data-column="2" id="depotBezeichnung" ng-change="vm.coluVisi()" ng-model="vm.depotBezeichnung">
        <label class="" for="">DepotBezeichn.</label>
    </div>
    <div class="col-1">
        <input type="checkbox" class="" data-column="3" id="plattform" ng-change="vm.coluVisi()" ng-model="vm.plattform">
        <label class="" for="">Plattform</label>
    </div>
    <div class="col-1">
        <input type="checkbox" class="" data-column="4" id="bezeichnung" ng-change="vm.coluVisi()" ng-model="vm.bezeichnung">
        <label class="" for="">Bezeichnung</label>
    </div>
    <div class="col-1">
        <input type="checkbox" class="" data-column="5" id="handelstag" ng-change="vm.coluVisi()" ng-model="vm.handelstag">
        <label class="" for="">Handelstag</label>
    </div>
    <div class="col-1">
        <input type="checkbox" class="" data-column="6" id="iSIN" ng-change="vm.coluVisi()" ng-model="vm.iSIN">
        <label class="" for="">ISIN</label>
    </div>
    <div class="col-1">
        <input type="checkbox" class="" data-column="7" id="geschaeftsart" ng-change="vm.coluVisi()" ng-model="vm.geschaeftsart">
        <label class="" for="">Geschaeftsart</label>
    </div>
    и т.д.

…………… ……………

У меня компонент с HTML связан вот так: (function () { ‘use strict’;

angular .module(‘app’) .component(‘abrechnungen’, { templateUrl: ‘/Scripts/app/abrechnungen/abrechnungen.template.html’, controller: AbrechnungenController, controllerAs: ‘vm’, require: { appCoreCtrl: ‘^^appCore’ } });

AbrechnungenController.$inject = ['$timeout','appDataService', 'DTOptionsBuilder', 'DTColumnDefBuilder', 'DTColumnBuilder', 'dtLanguageDe', '$scope'];

function AbrechnungenController($timeout, appDataService, DTOptionsBuilder, DTColumnDefBuilder, DTColumnBuilder, dtLanguageDe, $scope) {
    var vm = this;
    vm.$onInit = onInit;

    // Variablen
    if (localStorage.getItem('datumVon')) {
        vm.datumVon = localStorage.getItem('datumVon');
    }
    else {
        vm.datumVon = moment().startOf('month').toDate();
    }

    if (localStorage.getItem('datumBis')) {
        vm.datumBis = localStorage.getItem('datumBis')
    }
    else {
        vm.datumBis = moment().toDate();
    }

…….

    // Methoden
    vm.initDtAbrechnungen = initDtAbrechnungen;
    vm.initDateRangePicker = initDateRangePicker;

    vm.getDepotBezeichnungen = getDepotBezeichnungen;
    vm.getPlattforms = getPlattforms;
    vm.getAbrechnungsWaehrungen = getAbrechnungsWaehrungen;

…….

    ///
    /// BODY
    /////////////////////////////////////

    function onInit() {
        vm.initDateRangePicker();
        vm.initDtAbrechnungen();
        vm.getDepotBezeichnungen();
        vm.getPlattforms();
        vm.getAbrechnungsWaehrungen();
    } 


   // и там ниже 

   function coluVisi() {

        // Get the column API object
        var XX = $(this).attr('data-column'); // не правильно!  Но Мне нужно как то получить ХХ
        var col = vm.dtInstance.DataTable.column(XX);

        // Toggle the visibility          
        col.visible(!col.visible());

} И вот функция в AngularJS компоненте, котороя нуждается в значении data-column=«ХХ»:

function coluVisi() {

        // Get the column API object
        var XX = $(this).attr('data-column'); // не правильно!  Но Мне нужно как то получить ХХ
        var col = vm.dtInstance.DataTable.column(XX);

        // Toggle the visibility          
        col.visible(!col.visible());

} Мне нужно как то получить ХХ, я бъюсь уже непозволительное количество часов! Это же скорее всего как-то очень не сложно, но я почему то не могу найти как написать… HELP