Ich möchte eine Liste der in einem Array empfangenen Eingabe markieren und den Fokus auf den ersten von ihnen legen.Fehler mit JavaScript anzeigen
<head>
<script type='text/javascript' src='app.js'></script>
</head>
<body>
...
<script>showErrors(['firstName', 'lastName'])</script>
</body>
in app.js, habe ich den folgenden JavaScript-Code:
function showErrors($fields)
{
$fields.forEach(function($field){
console.log($field);
$('#'+$field).addClass('error-custom');
$('#'+$field).css('border', 'red solid 2px');
});
//set focus to first field
if($fields.length > 0)
{
$('#'+$fields[0]).focus();
}
}
Der JS-Code ausgeführt wird, aber bevor die Seite gerendert wird. Ich habe versucht, die Funktion showErrors in $(document).ready(function(){...}
zu setzen, aber es hatte immer noch keinen Effekt.
Wo sollte ich den Code platzieren, damit ich anwenden kann, nachdem die Seite gerendert wurde?
Wenn die Seite dynamisch von Code erstellt wird, den Sie nicht angezeigt haben, dann machen Sie danach ... sonst '$ (document) .ready (function() {... Ihr Code hier ...}) 'sollte der richtige Ort sein, um es zu tun –
und Sie sollten überlegen, einen Rahmen in CSS hinzuzufügen, wenn dieser Rahmen nur sichtbar sein sollte, wenn das Element die' error-custom' Klasse hat. –
Sie erwähnen "app.js" ... Verwenden Sie irgendeine Art von Framework neben jQuery? Ich sehe auch nicht, dass jQuery in Ihrem HTML-Code referenziert wird. viele Leute vergessen diesen Schritt. –