2015-10-29 2 views
1

У меня есть html-форму(), я хочу, чтобы она отображалась, когда я нажимаю кнопку. декларация формы заключается в следующем:появляется элемент html, нажимая на кнопку с angularjs

<div id = "formulaire" class="gl" > 

и кнопка:

<a href="#" ng-click="edit(u)">Edit</a> 

Я использую angularjs в моем коде. Пожалуйста, помогите мне.

+0

Хм, вы также можете использовать Bootstrap? –

+0

yes Я использую bootstrap-3.3.5 –

+0

Вы также можете использовать функциональность [модальный] (http://getbootstrap.com/javascript/#modals) для формы –

ответ

0

Это лучше использовать простую переменную, чем функции в этом случае. Я бы также рекомендовал использовать controller scope при настройке переменных вместо application scope, поэтому вы не сталкиваетесь с проблемами с переменными, когда ваше приложение становится большим.

Я также выбрал data-ng-click над ng-click, потому что это позволит правильно проверить (что можно проверить с помощью W3's validator).

Попробуйте это ...

"use strict"; 
 
angular.module('myApp', []) 
 
.controller("myController", function() { 
 
    this.edit = false; 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js"></script> 
 

 
<div data-ng-app="myApp" data-ng-controller="myController as ctrl"> 
 
    <a href="#" data-ng-click="ctrl.edit = !ctrl.edit">Edit</a> 
 

 
    <div id="formulaire" class="gl" data-ng-show="ctrl.edit"> 
 
     <form> 
 
      <fieldset> 
 
       <label>Field:</label> 
 
       <input type="text" /> 
 
      </fieldset> 
 
     </form> 
 
    </div> 
 
</div>

0

Вы заглянули в ngShow directive? Это позволяет вам отображать или скрывать элемент DOM в зависимости от того, разрешает ли выражение атрибута значение truthey или falsey. изменение модели

0

Добавить по щелчку

<a href="#" ng-click="show = true">Edit</a> 

А затем отобразить форму, если модель верна

<div id = "formulaire" class="gl" ng-if="show"> 
+0

У меня есть функция ng-click: Edit Могу ли я использовать два ng-click? –

+0

Я предполагаю, что edit (u) является fucntion. В этом случае вы можете просто сказать $ scope.show = "true"; в вашей функции – Miha2255

+0

Thys :) это работает –

Смежные вопросы