From a9d86f6cae9572818694a7ff0386a58e72b5ee2e Mon Sep 17 00:00:00 2001 From: Avior Date: Tue, 8 Oct 2019 17:37:28 +0200 Subject: [PATCH] Updated datalistinput Support "" and Fixed some bug --- modules/FMDatalistInput.ts | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/modules/FMDatalistInput.ts b/modules/FMDatalistInput.ts index 8ac1537..ac8b243 100644 --- a/modules/FMDatalistInput.ts +++ b/modules/FMDatalistInput.ts @@ -22,10 +22,26 @@ export default class FMDatalistInput extends FMInput { } setValue(value: string) { + if (value == "") { + this.element.value = "" + return + } if (this.datalist) { - let option: HTMLOptionElement = this.datalist.querySelector(`[value="${value}"]`) + if ((value as any).id != undefined) { + value = (value as any).id + } + let option: HTMLOptionElement = this.datalist.querySelector(`[data-value="${value}"]`) + if (option != undefined) { + this.element.value = option.value + return + } + if (option == undefined && !this.isStrict) { + this.element.value = value + return + } if (option || !this.isStrict) { this.element.value = value + return } } }