Dies ist mein erster Beitrag, also bitte nehmen Sie es mir einfach :)Funktion Argumente als Text nicht funktioniert
Ich versuche, eine wiederverwendbare Funktion namens alertControls() zu erstellen. Ich versuche, die Argumente Bits zu machen, die ich in den HTML-Strings ersetzen kann, die in der Funktion aufgerufen werden, aber einen Fehler erhalte, wenn ich versuche, es so zu machen. Ich habe ein paar verschiedene Möglichkeiten ausprobiert, aber bin verwirrt, warum dies nicht in JS funktionieren würde:
function alertControls(parent, icon, alert, message) {
parent = "form-group has-warning has-feedback";
icon = "warning-sign";
alert = "warning";
message = "Password too short";
$(this).closest("div").removeClass();
$('.alert').remove();
$('span').not('.input-group-addon,.hidden-xs,.caret').remove();
$(this).closest("div").addClass(parent);
$(this).before('<span class="glyphicon glyphicon-' + icon + 'form-control-feedback" aria-hidden="true"></span>');
$(this).closest("div").append('<div class="alert alert-' + alert + ' alert-strong is-attached"><em class="glyphicon glyphicon-remove-sign"></em> <strong>' + message + '</strong></div>');
}
Dann möchte ich mit unterschiedlichen Werten in der Funktion html wieder zu verwenden können:
alertControls("form-group has-error has-feedback", "error-sign", "error", "Not valid");
Viele Danke für jede Hilfe
* "aber bekomme einen Fehler" * Und was ist das für ein Fehler? Was erwarten Sie von "this" in der Funktion? In welchem Kontext wird die Funktion aufgerufen? –
Remove parent = "", icon = "" ... Dies überschreibt die übergebenen Werte –
jsfiddle ?? oder irgendein Beispiel mit Code. – Cuchu