$().ready(function(){ $("#statusmsg").hide(); $("#txtbda,#txteda").datepicker({ minDate:new Date(2018,7,23), maxDate:new Date(2018,7,27) }); $("#pais").select2({ data: data.paises, placeholder: "Select Country", width: "70%", }); $("#roomtype").select2({ data: data.roomtypes, placeholder: "Select Rooming Preference", width:"70%", minimumResultsForSearch: -1, }); $('#registerform').on('submit',function(e) { e.preventDefault(); }); $('#registerform').validate({ ignore: '', rules: { nombre: { required: true, minlength: 2 }, apellido: { required: true, minlength: 2 }, email:{ required: true, email: true }, invited:{required:true}, financiacion:"required", letterinvited:"required", }, messages: { nombre: { required: "Please enter your firstname", minlength: "Your firstname must be at least 2 characters long" }, apellido: { required: "Please enter your lastname", minlength: "Your lastname must be at least 2 characters long" }, email: "Please enter a valid e-mail address", invited: "Select one option please", financiacion: "Select one option please", letterinvited: "Select one option please" }, submitHandler: function(form){ var formdata = $(form).serializeArray(); formdata.find(item => item.name === "pais").value = $("#pais").select2("data")[0].text; formdata.find(item => item.name === "roomtype").value = $("#roomtype").select2("data")[0].text; var parameters = $.param(formdata); console.log(parameters); }, errorElement: "em", errorPlacement: function ( error, element ) { // Add the `help-block` class to the error element element.parents(".input-container").addClass("has-feedback"); var esradio = element.prop("type") == "radio"; var pariente; if ( esradio ) { pariente = element.parents(".form-group").children(".radioerror"); pariente.append(error); error.css("color", "#a94442") //element.parents(".form-group").children(".radioerror").append(error); //element.parents(".radios").append(error); } else { error.addClass( "help-block" ); error.insertAfter( element ); } if ( !element.next( "span" )[ 0 ] && !esradio ) $( "" ).insertAfter( element ); if(esradio) element.parents(".form-group").children(".radioerror").prepend(""); }, success: function(label,element){ var esradio = $(element).prop("type") == "radio"; var pariente; if ( esradio ) { pariente = $(element).parents(".form-group").children(".radioerror"); var iconstatus = $(pariente).children("span"); if (!$(pariente).children("span")[ 0 ]) pariente.preprend(""); } else if ( !$( element ).next( "span" )[ 0 ]){ $( "" ).insertAfter( $( element ) ); } }, highlight: function ( element, errorClass, validClass ) { var esradio = $(element).prop("type") == "radio"; var pariente; if ( esradio ) { pariente = $(element).parents(".form-group").children(".radioerror"); pariente.addClass("has-error").removeClass("has-success"); var iconstatus = pariente.children( "span" ); iconstatus.addClass( "glyphicon-remove" ).removeClass( "glyphicon-ok" ); iconstatus.css("color","#a94442"); } else $( element ).next( "span" ).addClass( "glyphicon-remove" ).removeClass( "glyphicon-ok" ); $( element ).parents( ".input-container" ).addClass( "has-error" ).removeClass( "has-success" ); }, unhighlight: function (element, errorClass, validClass) { var esradio = $(element).prop("type") == "radio"; var pariente; if ( esradio ) { pariente = $(element).parents(".form-group").children(".radioerror"); pariente.addClass("has-success").removeClass("has-error"); var iconstatus = pariente.children( "span" ); iconstatus.addClass( "glyphicon-ok" ).removeClass( "glyphicon-remove" ); iconstatus.css("color","#3c763d"); } else $( element ).next( "span" ).addClass( "glyphicon-ok" ).removeClass( "glyphicon-remove" ); $( element ).parents( ".input-container" ).addClass( "has-success" ).removeClass( "has-error" ); } }); var finan; $('input:radio[name="financiacion"]').change(function(){ finan=true; if($(this).is(':checked') && $(this).val() == "si"){ $("#detallefinan").show(); $("#detallefinan textarea").addClass("has-error"); } else $("#detallefinan").hide(); $('#sifinan').tooltip("hide"); $('#sifinan').tooltip("destroy"); }); });