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'); });