Ich habe das Textfeld:Was ist falsch an meinem Body-Click-Event?
<input type='text' id='title' name='title'>
<div id='error' class='error'></div>
Wenn der Benutzer aus dem Textfeld klickt und es ist ein Validierungsproblem, das div „Fehler“ erscheinen.
Was ich tun möchte, ist das kleine Div ausblenden, wenn der Benutzer irgendwo im Körper klickt. Ich habe e.stopPropagation im Body-Click-Event versucht, aber nicht funktioniert.
Die div erscheint nie da, wenn ich aus dem Textfeld verschwimmen, es ist ein Körper klicken betrachtet hat
Bitte lassen Sie mich wissen, wenn Sie eine Idee haben. Grüße
EDIT: Ich habe den Code aktualisiert. Der Code innerhalb des body-click-Ereignisses soll den "error" -div verbergen, wenn alles außer dem Textfeld angeklickt wird, aber nicht zum Funktionieren gebracht werden kann.
$('body').click(function(event){
if ($(event.target).closest('#title').get(0) == null) {
$("#error").hide();
}});
// Validation
$('#title').blur(function(){
var titleinput=$('#title').val();
if (titleinput.length <30 || titleinput.length >50){
$('#error').text('Your title must be between 30 and 50 characters').show();
}
});
wenig edit: machte einen kleinen Fehler mit dem Namen des Fehlers div. Das Problem ist immer noch das gleiche. – alexx0186
"Überall im Körper" ist die gesamte anklickbare Webseite. Einschließlich der ''. Es gibt keinen Platz auf der Seite, auf den der Benutzer klicken kann, um _is not_ the '
' anzuklicken. Ändern Sie Ihre Anforderungen. –Ihr Body-Click-Handler wurde nicht richtig geschlossen, aber ich vermute, das ist ein Tippfehler? – karim79