marca d'água de entrada de texto usando o bindingHandler personalizado
Eu tenho tentado criar um bindingHandler personalizado que eu possa usar para dar um comportamento de marca d'água aos campos de entrada de texto.
Porwatermark
Quero dizer: adicionar valores padrão aos campos de texto que são removidos em foco e substituídos no desfoque se o campo de texto ainda estiver vazio
Eu consegui fazer isso funcionar como demonstrado neste jsfiddle:http://jsfiddle.net/rpallas/nvxuw/
Eu tenho 3 perguntas sobre esta solução:
Existe alguma maneira de alterá-lo para que eu tenha que declarar o valor da marca d'água apenas uma vez? Atualmente eu tenho que colocá-lo no lugar onde eu declaro a ligação e eu também tenho que inicializar o observável com o mesmo valor no viewModel - como ele não terá nenhum valor inicial.Existe uma maneira melhor de chegar ao subjacente observável ao qual o valor dos elementos está vinculado. No momento, estou usando o allBindingsAccessor, mas isso parece errado para mim. Originalmente eu estava apenas definindo o valor usando jquery$(element).val('')
mas isso também parecia errado. Qual é o melhor, ou existe uma maneira melhor?Alguém tem ou sabe de uma solução existente para este problema? Eu estou reinventando a roda?