2017-02-16 4 views
0

認証が成功した後にログインフォームを送信して別のページにリダイレクトすると、変更が保存されていないというポップアップが表示されます。フォームに変更を保存せずに別のページにリダイレクトする場合にのみ、このポップアップが表示されるはずです。フォームの送信後に保存されていない変更をポップアップする - AngularJS

フォームの$setPrestine()$setUntouched()関数を呼び出して、モデルをnullに設定してもポップアップが表示されるようにしました。

これを正しく処理するにはどうすればよいですか?おかげ

UPDATE

は、私は問題が私が働いているプロジェクトで使用される角度モジュール(角-敏捷性)によって引き起こされていることが分かりました。私は多くのトレースを行った後、解決策を見つけました。

+0

を参照することができます。データベースの更新、つまりバックエンドを意味します。右?? –

+0

認証が成功したら私のホームページにリダイレクトしてから、実際にここに何も保存していません。しかし、自分のホームページにリダイレクトしようとすると、変更を保存していないcozを実際にナビゲートしたいかどうかを尋ねるポップアップが表示されます。 – Rian

+0

@manishkumarあなたがフォームに加えた変更を保存することを意味します。 – Rian

答えて

1

あなたは様々なクラス

NG-手付かず、NG-汚い あなたがそれらのアクション

を行う場合にはそれを学習し、それに応じて使用することができ、入力に適用されますがあります。 read this

<script> 
    angular.module('formExample', []) 
    .controller('FormController', ['$scope', function($scope) { 
     $scope.userType = 'guest'; 
    }]); 
</script> 
<style> 
.my-form { 
    transition:all linear 0.5s; 
    background: transparent; 
} 
.my-form.ng-invalid { 
    background: red; 
} 
</style> 
<form name="myForm" ng-controller="FormController" class="my-form"> 
    userType: <input name="input" ng-model="userType" required> 
    <span class="error" ng-show="myForm.input.$error.required">Required!</span><br> 
    <code>userType = {{userType}}</code><br> 
    <code>myForm.input.$valid = {{myForm.input.$valid}}</code><br> 
    <code>myForm.input.$error = {{myForm.input.$error}}</code><br> 
    <code>myForm.$valid = {{myForm.$valid}}</code><br> 
    <code>myForm.$error.required = {{!!myForm.$error.required}}</code><br> 
</form> 

今、あなたはそうするために様々な方法がある見ることができます。
よく見て、適用してください。ハッピーコーディング!!

代わりにあなたがフォームに変更を保存どういう意味ですかこのanswer

+0

申し訳ありませんが、この問題は、私のプロジェクトで使用されている角度モジュール(角速度性)が原因であることがわかりました。私は多くのトレースを行った後、解決策を見つけました。とにかくあなたの時間をありがとう:) – Rian

+0

あなたは答えを投稿することができます。同じ問題を抱えている他の人は、それが役に立つと思うかもしれません。 –

+0

となります。ありがとう。 – Rian

関連する問題