diff --git a/packages/person-select/src/person-select.js b/packages/person-select/src/person-select.js index f63b4b1ad2a31635f1c5369eccedade17acc9cee..3e98114570be3986b9041e125d62a69a2299f7ef 100644 --- a/packages/person-select/src/person-select.js +++ b/packages/person-select/src/person-select.js @@ -125,22 +125,25 @@ class PersonSelect extends VPULitElementJQuery { } } }).on("select2:select", function (e) { - // set value custom element + // set custom element attributes const identifier = e.params.data.id; - $this.attr("value", identifier); - $this.val(identifier); - const object = findObjectInApiResults(identifier, lastResult); + $this.attr("data-object", JSON.stringify(object)); $this.data("object", object); + $this.val(identifier); - // fire a change event - that.dispatchEvent(new CustomEvent('change', { - detail: { - value: identifier, - }, - bubbles: true - })); + if ($this.attr("value") !== identifier) { + $this.attr("value", identifier); + + // fire a change event + that.dispatchEvent(new CustomEvent('change', { + detail: { + value: identifier, + }, + bubbles: true + })); + } }); // preset a person