JavaScript’овий watermark і defaultValue

От елементарна здавалось би фігня.

“До речі ця фігня називається Watermark” (с) Pavlo Stolyar

Але по різному ж можна робити. Наприклад так:

<input type="text" name="s" id="s" size="15" value="Пошук..." onblur="if(this.value=='') this.value='Пошук...'" onfocus="if(this.value=='Пошук...') this.value='';" />

Але це ж плоско. Ні, ну серйозно. В коді треба 3-ри рази написати слово “Пошук…”. Навіщо тоді люди взагалі комп’ютери придумували…

Гарне вирішення цієї задачі я побачив в коді плагіна ArticleCategory для wikimedia:

<script type="text/javascript">
<!--
function clearText(thefield){
    if (thefield.defaultValue==thefield.value)
        thefield.value = ""
}
 
function addText(thefield){
    if (thefield.value=="")
        thefield.value = thefield.defaultValue
}
// -->
</script>

Це якщо таких полів на сторінці є декілька. Якщо одне, то можна використовувати трохи перероблений код з першого прикладу:

<input type="text" name="s" id="s" size="15" value="Пошук..." onfocus="if(this.value==this.defaultValue)this.value=''" onblur="if(this.value=='')this.value=this.defaultValue"/>

Квітка 🙂

One thought on “JavaScript’овий watermark і defaultValue

Leave a Reply

Your email address will not be published. Required fields are marked *