受magento头部搜索栏的启发,稍微简化改写了一下js

代码如下

 

  1. /**  简化 重命名后的js 源代码,参考Varien.searchForm  
  2. * Form input help infomation client model 
  3. */ 
  4. Varien.helpInfo = Class.create(); 
  5. Varien.helpInfo.prototype = { 
  6.     initialize : function(form, field, emptyText){ 
  7.         this.form   = $(form); 
  8.         this.field  = $(field); 
  9.         this.emptyText = emptyText; 
  10.  
  11.         Event.observe(this.form,  'submit'this.submit.bind(this)); 
  12.         Event.observe(this.field, 'focus'this.focus.bind(this)); 
  13.         Event.observe(this.field, 'blur'this.blur.bind(this)); 
  14.         this.blur(); 
  15.     }, 
  16.  
  17.     submit : function(event){ 
  18.         if (this.field.value == this.emptyText || this.field.value == ''){ 
  19.             Event.stop(event); 
  20.             return false
  21.         } 
  22.         return true
  23.     }, 
  24.  
  25.     focus : function(event){ 
  26.         if(this.field.value==this.emptyText){ 
  27.             this.field.value=''
  28.         } 
  29.  
  30.     }, 
  31.  
  32.     blur : function(event){ 
  33.         if(this.field.value==''){ 
  34.             this.field.value=this.emptyText; 
  35.         } 
  36.     } 

使用范例

 

  1. <form id="test_form" method="post"> 
  2.         <label for="testinput"><?php echo $this->__('just a test:') ?></label> 
  3.         <input id="testinput" type="text" class="input-text" /> 
  4.         <button type="submit" class="button"><span><span><?php echo $this->__('Submit') ?></span></span></button> 
  5.         <script type="text/javascript"> 
  6.             var testForm = new Varien.helpInfo('test_form', 'testinput', 'Some help info...'); 
  7.         </script> 
  8. </form>