znak wodny wprowadzania tekstu przy użyciu niestandardowego bindHandler

Próbowałem utworzyć niestandardowy moduł bindHandler, którego mogę użyć, aby nadać znak wodny działaniu polom wprowadzania tekstu.

Przezwatermark mam na myśli: dodawanie wartości domyślnych do pól tekstowych, które są usuwane na fokusie i zastępowane na rozmycie, jeśli pole tekstowe jest nadal puste

Udało mi się to uruchomić, jak pokazano w tym jsfiddle:http://jsfiddle.net/rpallas/nvxuw/

Mam 3 pytania dotyczące tego rozwiązania:

Czy jest jakiś sposób, aby to zmienić, aby tylko raz zadeklarować wartość znaku wodnego? Obecnie muszę umieścić go w miejscu, w którym deklaruję powiązanie, a także muszę zainicjalizować obserwowalność o tej samej wartości w viewModelu - ponieważ w przeciwnym razie nie będzie ona miała wartości początkowej.Czy istnieje lepszy sposób dotarcia do obserwowalnego elementu, do którego jest zobowiązana wartość elementów. Aktualnie chwytam go za pomocą AllBindingsAccessor, ale to jest dla mnie złe. Pierwotnie ustawiałem wartość za pomocą jquery$(element).val('') ale to też było złe. Co jest najlepsze, czy jest lepszy sposób?Czy ktoś ma lub wie o istniejącym rozwiązaniu tego problemu? Czy ponownie wymyślam koło?

questionAnswers(2)

yourAnswerToTheQuestion