Кажется, что проблема или моя нехватка знаний о том, как остановить форму для отправки с prototypejs. Может быть, кто-то может помочь мне с вопросом я столкнулсяstopping form submit with prototype.js
считают эту простую форму
<form id="formContact" method="post">
<p>Name:
<br />
<input type="text" id="name" name="yourName" size="20" />
</p>
<p>E-mail:
<br />
<input type="e-mail" name="yourEmail" size="20" />
</p>
<p>Message:
<br />
<textarea cols="20" rows="10" name="yourMessage"></textarea>
</p>
<p>
<input type="submit" value="Submit this form" name="submitButton" />
</p>
</form>
и этот маленький фрагмент из JS Protoype руководства http://prototypejs.org/doc/latest/dom/Event/stop/
Event.observe('formContact', 'submit', function (event) {
var login = $F('name').strip();
if ('' == login) {
Event.stop(event);
// Display the issue one way or another
}
});
$('formContact').submit();
все это в скрипкой: http://jsfiddle.net/C3eFu/2/
Теперь проблема заключается в том, что он отлично останавливает форму, если кнопка нажата, но не когда форма отправлена с помощью javas cript.? Это 1%, где прототип не может остановить событие?
это можно сделать с jquery без каких-либо проблем, поэтому я думаю, что это срабатывает, позвольте мне посмотреть, могу ли я сделать пример –
, чтобы увидеть эту скрипту, которая использует jQuery, который может обрабатывать этот сценарий: http://jsfiddle.net/zTLC6/ –
это 2 разных 'submit() '- в вашей первой скрипте с PrototypeJS вызываемый метод' submit() 'является фактическим методом объекта формы - против второй скрипки с jQuery метод' submit() 'является методом jQuery, который в конечном итоге запускает реальную форму объект метод. И FWIW в jQuery скрипке событий, которые были выпущены, были обратными комментариям в js. –