javascript - tablas - ¿Cómo agregar muchas funciones en un solo clic?
que se puede hacer con javascript (5)
Mucha gente usa la opción (clic), así que compartiré esto también.
<button (click)="function1()" (click)="function2()">Button</button>
He estado buscando la forma de ejecutar esto, pero no puedo encontrar nada relacionado hasta ahora, :( Podría anidar ambas funciones, sí, pero me pregunto si esto es posible.
<td><button class="btn" ng-click="edit($index) open()">Open me!</button></td>
Mi código JS en este momento:
$scope.open = function () {
$scope.shouldBeOpen = true;
};
$scope.edit = function(index){
var content_1, content_2;
content_1 = $scope.people[index].name;
content_2 = $scope.people[index].age;
console.log(content_1);
};
Me gustaría llamar a dos funciones con un solo clic, ¿cómo puedo hacer esto en angularJS? Pensé que sería sencillo como en CSS cuando agregas varias clases ... pero no es :(
Prueba esto:
- Hacer una colección de funciones.
- Haga una función que recorra y ejecute todas las funciones de la colección.
- Añadir la función al html.
array = [
function() {},
function() {},
function() {}
]
function loop() {
array.forEach(item) {
item()
}
}
ng - click = "loop()"
Puedes llamar a múltiples funciones con '';''
ng-click="edit($index); open()"
Tienes 2 opciones :
Crea un tercer método que envuelva ambos métodos. La ventaja aquí es que pones menos lógica en tu plantilla.
De lo contrario, si desea agregar 2 llamadas en ng-click puede agregar '';'' después de
edit($index)
como esteng-click="edit($index); open()"
Vea aquí: http://jsfiddle.net/laguiz/ehTy6/
ng-click "$watch(edit($index), open())"