我使用ajax发送我的联系方式而无需重新加载联系页面。如果没有ajax,字段的验证确实很好,但是使用ajax,重新加载总是成功而无需验证。 如何在重新加载之前验证我的字段?
<form name="contactForm" id="contactForm">
<button type="button" onclick="fsubm()" title="<?php echo Mage::helper('contacts')->__('Submit') ?>" class="button"></button></form>
function fsubm(){
var contactForm = new VarienForm('contactForm', true);
if (contactForm.validator && contactForm.validator.validate()) {
new Ajax.Updater({
success:'contactForm'
},
'<?php echo $this->getUrl('contacts/index/post') ?>',
{
method:'post',
action:"/contacts/index/post",
asynchronous:true,
evalScripts:false,
onSuccess:function(request, json){
Element.hide('ajaxnotice');
Element.hide('overlay');
Element.hide('contactForm');
Element.show('successmessage');
},
onFailure:function(request,json){
alert('error');
},
onLoading:function(request, json){
Element.show('ajaxnotice');
Element.show('overlay');
},
// parameters: $(contactForm).serialize(true),
parameters:Form.serialize($('contactForm')),
});
}
}
答案 0 :(得分:0)
我删除了onclick="fsubm()"
并添加了
$x('#contactForm').submit(
function fsubm(){
var contactForm = new VarienForm('contactForm', true);
event.preventDefault();
...
})