A seguir está o meu código JavaScript (mootools):
$('orderNowForm').addEvent('submit', function (event) {
event.preventDefault();
allFilled = false;
$$(".required").each(function (inp) {
if (inp.getValue() != '') {
allFilled = true;
}
});
if (!allFilled) {
$$(".errormsg").setStyle('display', '');
return;
} else {
$$('.defaultText').each(function (input) {
if (input.getValue() == input.getAttribute('title')) {
input.setAttribute('value', '');
}
});
}
this.send({
onSuccess: function () {
$('page_1_table').setStyle('display', 'none');
$('page_2_table').setStyle('display', 'none');
$('page_3_table').setStyle('display', '');
}
});
});
Em todos os navegadores, exceto no IE, isso funciona bem. Mas no IE, isso causa um erro. Eu tenho o IE8 e, ao usar seu depurador JavaScript, descobri que o event
objeto não possui um preventDefault
método que está causando o erro e, portanto, o formulário está sendo enviado. O método é suportado no caso do Firefox (que eu descobri usando o Firebug).
Qualquer ajuda?