diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index aa870b9..398eb2d 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -4,6 +4,7 @@ X-editable changelog
 
 Version 1.4.0 wip
 ----------------------------
+[enh] setValue method updates input if form is open (vitalets) 
 [enh] select: chnage source via option method, see #61 (vitalets) 
 [bug] select: source loaded twice if sourceCache = false (vitalets) 
 [enh] added `destroy` method, see #61 (vitalets) 
diff --git a/src/editable-form/editable-form.js b/src/editable-form/editable-form.js
index d5949ce..13057d6 100644
--- a/src/editable-form/editable-form.js
+++ b/src/editable-form/editable-form.js
@@ -323,6 +323,11 @@ Editableform is linked with one of input types, e.g. 'text', 'select' etc.
             } else {
                 this.value = value;
             }
+            
+            //if form is visible, update input
+            if(this.$form && this.$form.is(':visible')) {
+                this.input.value2input(this.value);
+            }            
         }               
     };
 
diff --git a/test/unit/api.js b/test/unit/api.js
index 40f7527..16b6a31 100644
--- a/test/unit/api.js
+++ b/test/unit/api.js
@@ -361,10 +361,18 @@ $(function () {
         equal(e.data('editable').value, 1, 'value correct');
         equal(e.text(), groups[1], 'text shown correctly');
         
+        //open editable to check update of input 
+        e.click();
+        var p = tip(e);
+        
+        equal(p.find('select').find('option').length, size, 'options loaded');
+        equal(p.find('select').val(), e.data('editable').value, 'selected value correct');          
+        
         e.editable('setValue', 2);
         
         equal(e.data('editable').value, 2, 'new value correct');
         equal(e.text(), groups[2], 'new text shown correctly');
+        equal(p.find('select').val(), e.data('editable').value, 'new selected value correct'); 
      });