<input> lostfocus / onblur event w knockout

Chcę wykonać zdarzenie na obserwowalnym nokautie związanym zinput. Ta funkcja powinna być wykonywana, gdy sterowanie traci ostrość, nawet bez wpisywania czegokolwiek. Próbowałem zmienić powiązanie zdarzenia, ale nie uruchamia się, gdy użytkownik odsuwa się od kontrolki bez wpisywania czegokolwiek. Próbowałem zdarzenia mouseout, ale uruchamia się tylko wtedy, gdy użytkownik kliknie w innym miejscu w formularzu, po utracie ostrości - nie dokładnie to, czego chcę. Chcę, aby nawet strzelać, gdy tylko ostrość zostanie odsunięta od kontroli, nawet z kartą.

Oto kod, którego użyłem do zdarzenia mouseout:

<input
    type="text"
    id="txtFirstName"
    tabindex="1"
    maxlength="25"
    class="txtbox" 
    style="width: 200px;"
    data-bind="value: FirstName, 
               attr: {title: FirstNameErrorMessage },
               css: {validationFailed: !IsValidFirstName() },
               event: {mouseout: ValidateFirstName}" 
/>

this.ValidateFirstName = function () {
    self.IsValidFirstName(true);
    self.FirstNameErrorMessage('');
    if (self.FirstName() == '') {
        self.IsValidFirstName(false);
        self.FirstNameErrorMessage('First Name is required');
    }
}

Czy ktoś może pomóc?

questionAnswers(6)

yourAnswerToTheQuestion