From dfae43a75c36af24741f3e6ed9d0a9aa63707343 Mon Sep 17 00:00:00 2001
From: Sergio Crisostomo <sergiosbox@gmail.com>
Date: Wed, 25 Oct 2017 20:49:38 +0200
Subject: [PATCH] correct input value in filterable mode

---
 src/components/select/option.vue |  2 +-
 test/unit/specs/select.spec.js   | 21 +++++++++++++++++++++
 2 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/src/components/select/option.vue b/src/components/select/option.vue
index 8dc2308..0863097 100644
--- a/src/components/select/option.vue
+++ b/src/components/select/option.vue
@@ -66,7 +66,7 @@
             },
             // 在使用函数防抖后,设置 key 后,不更新组件了,导致SearchLabel 不更新 #1865
             updateSearchLabel () {
-                this.searchLabel = this.$el.innerHTML;
+                this.searchLabel = this.$el.textContent;
             }
         },
         mounted () {
diff --git a/test/unit/specs/select.spec.js b/test/unit/specs/select.spec.js
index 77daf0d..cced6e6 100644
--- a/test/unit/specs/select.spec.js
+++ b/test/unit/specs/select.spec.js
@@ -77,6 +77,27 @@ describe('Select.vue', () => {
       });
     });
 
+    it('should display normal characters in input when in filterable mode', done => {
+      vm = createVue({
+        template: `
+          <Select v-model="value" filterable>
+            <Option v-for="item in options" :value="item.value" :key="item.value">{{ item.label }}</Option>
+          </Select>
+        `,
+        data() {
+          return {
+            value: 2,
+            options: [{value: 1, label: '> 100$'}, {value: 2, label: '< 100$'}]
+          };
+        }
+      });
+      vm.$nextTick(() => {
+        const input = vm.$el.querySelector('.ivu-select-input');
+        expect(input.value).to.equal('< 100$');
+        done();
+      });
+    });
+
     it('should use the value\'s label instead of placeholder when both are set', done => {
       vm = createVue({
         template: `
--
libgit2 0.21.4