Ошибка проверки формы отправки прототипа - PullRequest
0 голосов
/ 24 сентября 2010

У меня есть форма с идентификатором 'new_profile_choices', и я использую Prototype для проверки формы. Когда я пытался проверить событие отправки формы, оно, похоже, не обрабатывало событие. Не могли бы вы помочь мне отладить его. Спасибо

Просмотр источника формы

<form action="/polls/vote" class="new_profile_choices" id="new_profile_choices" method="post">
        <input id="profile_choices_profile_id" name="profile_choices[profile_id]" type="hidden" value="2" />
        <input id="profile_choices_poll_id" name="profile_choices[poll_id]" type="hidden" value="50" />
        <div id="poll_error_messages">
            <p>Please select a valid vote</p>
        </div>
        <p>
            <p class="choice">
            <input id="profile_choices_choice_id_80" name="profile_choices[choice_id]" type="radio" value="80" />Yes
            </p>
            <p class="choice">
            <input id="profile_choices_choice_id_81" name="profile_choices[choice_id]" type="radio" value="81" />No
            </p>
            <p class="choice">
            <input id="profile_choices_choice_id_82" name="profile_choices[choice_id]" type="radio" value="82" />Can't Say
            </p>
            </p>
            <input class="r4corners" id="profile_choices_submit" name="commit" type="submit" value="   Vote   " />
</form>

Обработчик событий прототипа

$('new_profile_choices').observe("submit", function(event){
 alert("form submission");
}

1 Ответ

0 голосов
/ 24 сентября 2010

В вашем посте есть типографская ошибка: в конце блока скрипта должны быть закрывающая скобка (критическая) и точка с запятой (не так важно, но должно быть). Более того, все должно выполняться после загрузки DOM (onload, ondomready):

document.observe('dom:loaded', function () {
    $('new_profile_choices').observe('submit', function (event) {
        alert('form submission');
    });
});

(проверьте здесь: http://jsfiddle.net/YuTH5/1/)

...