试图填充webform的applescript上的预期行尾错误

时间:2017-11-01 23:39:29

标签: javascript google-chrome applescript jira

我正在努力想出一个我可以运行的苹果脚本,以便填写我每天都做的一些网页表格(JIRA门票表格)。

我创建了这个JS脚本,当我在Chrome控制台上运行它时,它正在运行:

document.getElementById('summary').value="Inserted text"

所以现在我创建了我的AppleScript以便能够从外部执行它但是我总是得到“语法错误。预期的行尾等,但发现了未知的令牌。”

这是代码:

tell application "Google Chrome"

execute javascript document.getElementById('summary').value="Inserted text" in document 1   

end tell

我知道告诉应用程序有效,但我不明白如何解决语法错误并使AppleScript工作

2 个答案:

答案 0 :(得分:1)

in document 1语法适用于Safari。

使用Google Chrome浏览器,您应该与目标active tab的{​​{1}}对话,例如:

window

或者将窗口编号替换为tell application "Google Chrome" tell active tab of window 1 execute javascript "document.getElementById('summary').value = 'Inserted text';" end tell end tell

答案 1 :(得分:1)

这适用于我使用最新版本的Sierra

tell application "Google Chrome"
    execute front window's active tab javascript "document.getElementById('summary').value = 'Inserted text';"
end tell

OR - 仅压缩到一行代码

tell application "Google Chrome" to execute front window's active tab javascript "document.getElementById('summary').value = 'Inserted text';"

我选择此代码的原因是因为以下示例..

在谷歌浏览器中,我开始使用一个窗口,然后是一个带有4个选项卡的窗口。下一个, 将这些标签拆分为4个单独的窗口。在此之后,我选择右下方窗口使其成为“活动窗口”。认为,正确的右下窗口现在是“窗口1”......我会错的(根据以下脚本的结果)

enter image description here

如果我在“窗口1”中运行脚本,它将在浏览器的左上角窗口运行,当我只有一个带有一个选项卡的窗口时,它就是窗口1。它保留了初始值。问题是我不想在

上运行我的脚本的窗口

enter image description here

所以显然窗口1不一定是前窗