Javascript-форум (https://javascript.ru/forum/)
-   Angular.js (https://javascript.ru/forum/angular/)
-   -   Работа с DOM (https://javascript.ru/forum/angular/57338-rabota-s-dom.html)

A1x1On2015 30.07.2015 15:35

Работа с DOM
 
Здравствуйте, я лузер в Angularjs, подскажите пожалуйста как решить некоторые хотелки.

Есть тег <input type="submit" name="TaskFromFinish" value="Завершить задачу" class="finishtag" id="one" ng-click="Task()" />

Необходимо по клику на input получить все его теги это(class, id, name, value) и атрибуты этой ссылки стоящей рядом:
<a href="www.site.ru" class="link">ссыль</a>

все полученные данные через запятую вставить сюды:
<div class="htm"></div>

Endy 30.07.2015 22:56

<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
</head>
<body ng-controller="mainCtrl">
  <form>
    <input type="submit" name="TaskFromFinish" value="Завершить задачу" class="finishtag" id="one" ng-click="Task($event)" />
    <a href="www.site.ru" class="link">ссыль</a>
</form>
<div class="htm"></div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular.min.js"></script>
<script>
  angular.module('app', [])
    .controller('mainCtrl', function($scope) {
        $scope.Task = function(obj){
            var elem = angular.element(obj.target);
            var output = angular.element(document.querySelector(".htm"));
            var linkElem = elem.next();
            var attrs = ['class', 'id', 'name','value']
                .map(function(name){return elem.attr(name)})
                .concat([].map.call(linkElem[0].attributes,function(e){
                    return linkElem.attr(e.name)
                }));
            output.html(attrs.join(';'));
            return false;
        };
    }); 
</script>
</body>
</html>

A1x1On2015 31.07.2015 09:47

Спасибо, то что нужно!:)


Часовой пояс GMT +3, время: 17:09.