Skip to content

Instantly share code, notes, and snippets.

@GoktugOzturk
Created September 14, 2016 22:19
Show Gist options
  • Select an option

  • Save GoktugOzturk/3079d45bdd2522fb113e7cbefca94c68 to your computer and use it in GitHub Desktop.

Select an option

Save GoktugOzturk/3079d45bdd2522fb113e7cbefca94c68 to your computer and use it in GitHub Desktop.
Ajax form submit for Wordpress Formidable(Lite) plugin
jQuery(function(){
jQuery('form[id^=form_]').on('submit',function(e){
var $form = jQuery(this);
e.preventDefault();
$form.find('.frm_error_style').remove();
$form.find('.frm_ajax_loading').show();
jQuery.ajax({
type: "POST",
url: $form.attr('action'),
data: $form.serialize()
})
.done(function(result) {
var $response = jQuery(result).find('form[id='+$form.attr('id')+']').first();
var $errorMessage = $response.find('.frm_error_style');
if($errorMessage.length > 0){
$form.prepend($errorMessage);
$response.find('.frm_form_field').each(function(i,v){
var $element = jQuery(v), $currentElement = $form.find('#'+$element.attr('id')), hasError = false;
$currentElement.find('.frm_error').remove();
if($element.hasClass('frm_required_field')){
hasError = true;
$currentElement.addClass('frm_required_field');
}else{
$currentElement.removeClass('frm_required_field');
}
if($element.hasClass('frm_blank_field')){
hasError = true;
$currentElement.addClass('frm_blank_field');
}else{
$currentElement.removeClass('frm_blank_field');
}
if(hasError){
$currentElement.append($element.find('.frm_error'));
}
});
}else{
$form.empty().append($response.find('.frm_message'));
if(typeof __gaTracker != 'undefined'){
__gaTracker('send', 'event', 'FormSubmit', $form.attr('id').replace(/form_/,''));
}
}
$form.find('.frm_ajax_loading').hide();
})
.fail(function() {
$form.find('.frm_ajax_loading').hide();
$form.prepend('<div class="frm_error_style">Form gönderilirken hata oluştu. Lütfen daha sonra tekrar deneyin.</div>');
})
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment