Witam, popełniłem sobie taki oto skrypt do resetowania pola formularza (wyszukiwarki akurat w tym przypadku)

  1. function resetSearch (colors, values, id) {
  2.  
  3. if (document.getElementById(id).value == values) {
  4.  
  5. document.getElementById(id).style.backgroundColor = ''+colors+'';
  6. document.getElementById(id).value= '';
  7.  
  8. }
  9.  
  10.  
  11. if (document.getElementById(id).value == '') {
  12.  
  13. document.getElementById(id).style.backgroundColor = ''+colors+'';
  14. document.getElementById(id).value = ''+values+'';
  15.  
  16. }
  17. }


Kiedy klikam w pole wyszukiwarki zdarzenie onClick wysyła do skryptu wartości (kolor, wartość_pola, id_pola). Wartość pola jest dokładnie taka sama jak zdefiniowana wartość value pola input. Niestety skrypt nie kasuje vartości pola input, tylko ustawia kursor za wartością domyślną i pozwala na dalsze uzupełnianie pola. Po skasowaniu ręcznym domyślnej wartości i opuszczeniu formularza (zostawieniu pola pustego) ustawiana jest domyślna wartość (tutaj skrypt działa jak należy).

Dodam, że jeżeli umieszczę ten kod bezpośrednio w html w zdarzeniach onClick i onBlur, to działa bez zarzutu. Tak samo jeżeli ustawię jakąś wartość dla resetowanego pola, np.

  1. document.getElementById(id).value= '[tu_np_spacja_lub_cokolwiek]';


to skrypt wstawi mi tę wartość do pola input...



Jaki błąd popełniłem, że skypt nie kasuje mi domyślnej wartości pola input?

Nikt, nic nie pomoże? -.-