From 3561bd1f015ab6ed735fe10b199fda9d08781d70 Mon Sep 17 00:00:00 2001 From: Josh at WLTechBlog Date: Mon, 18 Aug 2025 14:09:02 -0500 Subject: [PATCH] multiple --- daemon/daemon.go | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/daemon/daemon.go b/daemon/daemon.go index 5b212ef..2646b64 100644 --- a/daemon/daemon.go +++ b/daemon/daemon.go @@ -3493,14 +3493,18 @@ func (d *Daemon) interactMultiple(tabID, interactionsJSON string, timeout int) ( case "select": // For select elements, set the value using JavaScript - script := fmt.Sprintf("(this.value = '%s', this.dispatchEvent(new Event('change', { bubbles: true })), true)", interaction.Value) - result, err := element.Eval(script) + script := fmt.Sprintf("this.value = '%s'", interaction.Value) + _, err := element.Eval(script) if err != nil { - interactionResult.Error = fmt.Sprintf("failed to select option: %v", err) - } else if result.Value.Bool() { - interactionResult.Success = true + interactionResult.Error = fmt.Sprintf("failed to set select value: %v", err) } else { - interactionResult.Error = fmt.Sprintf("failed to select option: %s", interaction.Value) + // Trigger change event + _, err = element.Eval("this.dispatchEvent(new Event('change', { bubbles: true }))") + if err != nil { + interactionResult.Error = fmt.Sprintf("failed to trigger change event: %v", err) + } else { + interactionResult.Success = true + } } case "check":