Hallo zusammen,
im confirm.tpl habe ich das schon erfolgreich umgesetzt. Ich ergänze mein form-elements.tpl nun mit der gleichen Methodik, aber die Javascript Funktion wird einfach nicht aufgerufen.
{namespace name="frontend/forms/elements"}
{block name='frontend_forms_form_elements'}
{/block}
Lege ich auf den Button ein onklick dann tut er, aber der return false graut mir den Sende Button aus, so dass das Formular nach Korrektur der Eingabe nicht mehr abschickbar ist.
{s name='SupportActionSubmit'}{/s}
Jemand eine Idee?
Warum wird die Funktion bei onclick UND bei onsubmit ausgeführt? Würde das ganze so lösen, dann brauchst du auch keine onclick und onsubmits in den HTMLcode schieben.
document.asyncReady(function() {
$("form.support").on("submit", function(){
if( /EQ/i.test( $("DIESESINPUTFELDPRÜFEN").val() ) ){
return true;
}else{
$("DIESESINPUTFELDPRÜFEN").addClass("has--error");
alert("Bitte achte darauf bei der Bestellnummer die EQ Nummer einzutragen! Du
findest diese in deiner Bestellmail!");
return false;
}
});
});
Vielen Dank! Habe es gleich ausprobiert, aber es kommt der Fehler ---->
Liegt es an meiner script-async-ready.tpl?
Hallo zusammen,
habe mir jetzt anders beholfen. Lade in der frontend/index/index.tpl folgende Dateien:
{block name="frontend_index_header_javascript_jquery_lib"}
{/block}
Und gebe dem form-elements.tpl unter frontend/forms folgenden Code mit:
$("#support").validate(
{
errorPlacement: function(error, element) {
if (element.attr("name") == "name" ) {
error.insertBefore("#jqerror");
} else if (element.attr("name") == "email" ) {
error.insertBefore("#email");
} else if (element.attr("name") == "bestell" ) {
error.insertBefore("#bestell");
} else if (element.attr("name") == "artikel" ) {
error.insertBefore("#artikel");
} else if (element.attr("name") == "auswahl" ) {
error.insertBefore("#auswahl");
} else if (element.attr("name") == "defekt" ) {
error.insertBefore("#defekt");
}
else {
error.insertBefore("#e");
}
},
rules:
{
bestell:
{
pattern: /^EQ/,
minlength: 7,
maxlength: 7
},
defekt:
{
required:true
}
},
messages:
{
bestell:
{
pattern:"Die Bestellnummer muss mit EQ beginnen. Du findest sie in deiner Bestellmail!",
minlenght:"Die Bestellnummer muss 7 Stellen haben!",
maxlenght:"Die Bestellnummer muss 7 Stellen haben!"
}
}
});
Für mich war es wichtig mit der pattern Regen arbeiten zu können. Ist alles vielleicht nicht die Ideallösung, aber funktioniert einwandfrei bei mir.
Beste Grüße
Wilson