
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:
<?php ?> <?php echo $this->inlineScript()->prependFile('http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/md5.js'); ?>
Kod skryptu:
var changePassForm = document.getElementById('change-pass-form'); function passFormSubmit() { var passToChange = changePassForm.elements.namedItem('pass').value; passToChange = null; changePassForm.elements.namedItem('confirmpass').value = null; changePassForm.submit(); } function loaded() { changePassForm.elements.namedItem('submit').onclick = passFormSubmit; } 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()