Hej biggrin.gif

Mam wygenerowany przez Zenda formularz zmiany hasła użytkownika, który jest wyświetlany w widoku i podpięte kilka skryptów javascrpt. Niestety nie wiem dlaczego nie działa mi submit formularza poprzez javascript. Celowo jest to realizowane przez zwykły button, a nie przez submit, ponieważ chcę, żeby hasło już zaszyfrowane leciało na serwer.

Kod w widoku:
  1. <?php
  2. if(isset($this->changePassMessage))
  3. echo $this->changePassMessage;
  4.  
  5. echo $this->changePasswordForm;
  6. ?>
  7.  
  8.  
  9. <?php
  10. echo $this->inlineScript()->prependFile('http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/md5.js');
  11. echo $this->inlineScript()->prependFile('/js/usersjs/passEncipher.js');
  12. ?>


Kod skryptu:
  1. var changePassForm = document.getElementById('change-pass-form');
  2.  
  3.  
  4. function passFormSubmit() {
  5.  
  6. var passToChange = changePassForm.elements.namedItem('pass').value;
  7. changePassForm.elements.namedItem('aditional').value = CryptoJS.MD5(passToChange);
  8. passToChange = null;
  9. changePassForm.elements.namedItem('confirmpass').value = null;
  10. changePassForm.submit();
  11. }
  12.  
  13. function loaded() {
  14. changePassForm.elements.namedItem('submit').onclick = passFormSubmit;
  15. }
  16.  
  17.  
  18. changePassForm.onload = loaded;


Przy linijce: changePassForm.submit(); pojawia się błąd: Uncaught TypeError: object is not a function. Wyświetla się on po każdym kliknięciu w przycisk.
Testowałam to już na różne sposoby, nie wiem dlaczego submit nie działa. Formularz jest załadowany i widoczny dla javascriptu, podpięcie jakieś funkcji z alertem do zdarzenia onload na formularzu wyświetli ten alert. Co trzeba zrobić, żeby submit zadziałał?


Edit: już rozwiązałam, okazało się że button nie może mieć parametru name o wartości submit jeśli chcemy potem korzystać z funkcji submit()