我有一个id为“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");
}
答案 0 :(得分:0)
在你的帖子中是一个印刷错误:在脚本块的末尾应该是一个右括号(关键)和一个分号(不是那么重要,但应该在那里)。此外,应该在加载DOM之后执行所有操作(onload,ondomready):
document.observe('dom:loaded', function () {
$('new_profile_choices').observe('submit', function (event) {
alert('form submission');
});
});
(在此测试:http://jsfiddle.net/YuTH5/1/)