2017-05-24 17 views
0

すべての入力が入力されていない場合はボタンを無効にしようとしています。入力されてボタンが有効になっている場合。角度入力でのフォーム入力の確認

また、入力フィールドにテキストがない場合でも、ユーザーが無効化されたボタンをクリックした場合にのみ、入力の下にテキストを印刷しようとしています。

私の質問

テキストは、すべての入力フィールドに存在したら、彼らがいない場合、無効ボタンをユーザーがクリックすると

<div ng-if="!myForm.Lname.$invalid"> 
    <p>This field is required</p> 
</div> 
を示してどのように私は私のボタンを有効にするために自分のコードを変更しません

ですが、テキストが入力フィールドにない場合に限ります。

FULL CODE

<div class="form-group"> 
    <label for="first-name">First Name*</label> 
    <input type="text" class="form-control" name="Fname" placeholder="Enter first name" ng-model="formData.Fname" ng-required="true"> 
    <div ng-if="!myForm.Fname.$invalid"> 
     <p>This field is required</p> 
    </div> 
</div> 

<div class="form-group"> 
    <label for="last-name">Last Name*</label> 
    <input type="text" class="form-control" name="Lname" placeholder="Enter last name" ng-model="formData.Lname" ng-required="true"> 
    <div ng-if="!myForm.Lname.$invalid"> 
     <p>This field is required</p> 
    </div> 
</div> 

<div class="form-group"> 
    <label for="email">Email*</label> 
    <input type="email" class="form-control" name="email" placeholder="Enter a valid email address" ng-model="formData.email" ng-required="true"> 
</div> 

<div class="form-group row"> 
    <div class="col-xs-6 col-xs-offset-3"> 

     <button ui-sref="form.select" class="btn btn-block btn-info" ng-disabled="!myForm.Fname.$valid"> 
      Next Section <span class="glyphicon glyphicon-circle-arrow-right"></span> 
     </button> 

    </div> 
</div> 
+1

あなたのコードスニペットは、フォームタグが含まれていない、あなたは完全なコードを投稿することができます! –

+0

フォームには、名字、姓、電子メールの3つのフィールドしかありませんか?無効にされたボタンをクリックするのは、IMOナンセンスです。 – cezar

+1

なぜユーザーは無効なボタンをクリックしますか?あなたがボタンを押す前に、フォームを完了するためにユーザーをガイドする場合。必要なフィールドの前に*を追加し、無効にしたボタンに 'カーソル:不可'を追加することができます – NKDev

答えて

0

独自のディレクティブを作成することによってこれを行うことができます。 これがあなたを助けてくれることを願っています。

ここJsfiddle

HTMLのデモです:

<div ng-app="sampleapp"> 
<div ng-controller="samplecontoller" ng-init="showData()"> 
<form name="form" disable-btn ng-submit="submitForm()"> 
    <div> 
    <label>First Name:</label> 
    <input type="text" placeholder="First Name" ng-model="model.name" required> 
    </div> 
    <div> 
    <label>Last Name:</label> 
    <input type="text"placeholder="Last Name" ng-model="model.lname" required> 
    </div> 
    <div> 
    <button class="btn btn-primary" type="submit">Submit</button> 
    </div> 
</form> 
</div> 

+0

パーフェクト、ありがとう – Beep

関連する問題