2016-03-24 26 views
1

düğme sorunu tıkladıktan sonra: tıkladıktan sonraCanlandırıcı ve yönlendirme sayfası

"Şimdi yayınla" tekrar tekrar tekrar aynı verileri ekler "Şimdi yazı" hala dolu formu ile modal gösterir ve eğer tıkla.

Tüm form doldurulduktan ve düğmeye tıklandıktan sonra sayfanın yenilenmesini ve tahmin açıklamasıyla bağlantıya gitmesini istiyorum. Uygulamaya

Prediction.createPrediction($scope.prediction).then(function(ref) { 
      $toaster.pop('success', 'Prediction posted successfully.'); 
      $scope.prediction = { 
       player1: '', 
       player2: '', 
       winner: '', 
       venue: '', 
       date: '', 
       round: '', 
       description: '', 
       odd: '', 
       score: '', 
       status: 'open', 
       gravatar: '', 
       name: '', 
       poster: '' 
      }; 
      $location.path('/browse/' + ref.key()); 
     }); 

Bağlantı: https://sportpredictions.firebaseapp.com/#/ GitHub'dan

Kaynak kodunu (tahminlerde Gönderme kullanıcılar imzalanan yalnızca için mevcuttur): https://github.com/NiR-IT/tennispredictions (komut/hizmet/prediction.js, komut/denetleyicileri/tahmini. js, görüntüleme/parsiyel/post.html).

+0

Bunun çalışmadığını varsayar mıyız? Ne oluyor? – Lex

+0

Sayfa, modalda gönder düğmesini tıkladıktan sonra yenilenmiyor. Dolayısıyla, modal butonu manuel olarak kapatır ve "tahmin sonrası" butonuna tekrar basarsa, halihazırda formda doldurulmuş olan aynı modal olacaktır. –

cevap

1

Bunu deneyin: formunuza bir name="postForm" özniteliği ekleyin. Bu $scope.postForm aracılığıyla kontrolöre erişilebilir hale getirecek ve daha sonra form üzerindeki her şeyi sıfırlamak hangi $scope.postForm.$setPristine() çağırabilir - herhangi bir doğrulama hataları dahil olmak üzere, vb

P.S. Gerçekten güzel görünümlü bir uygulama!

+0

Tam olarak nerede $ scope.postForm koymak gerekir. $ SetPristine()? Ve ayrıca konsolda "$ toaster tanımlanmadı" hatası görüntüleniyor (ben gönder düğmesini tıklattığımda ". Teşekkürler, Lex :) –

+0

" toaster "cihazınıza enjekte ediyorsunuz; Toaster mesajından hemen sonra $ setPristine() 'a çağrı yapardım.O muhtemelen bu kodun geri kalanından kurtulabilirsiniz – Lex

+0

Yani şu ki, şimdi aynı olur, eğer jquery kodu koyarsak $ ('#Button') tıklayın. (function() { location.reload(); }); niye ( –

İlgili konular