Результат "Отсутствует значение" с помощью метода JavaScript document.getElementById - PullRequest
0 голосов
/ 25 июня 2018

Я пытаюсь автоматизировать поиск и сосредоточиться на той части, где компьютер вводит результаты поиска в строке поиска. Я думаю, что весь мой синтаксис правильный, но когда я запускаю код, ничего не происходит, и в журнале результатов AppleScript он говорит "пропущенное значение" ..

Вот мой код:

to inputByID(theId, theValue) --defines the function--
    tell application "Google Chrome"
        open location "https://www.google.com "
        execute javascript " document.getElementById(' " & theId & " ').value = ' " & theValue
    end tell
end inputByID

inputByID("lst-ib", "hi ")

Мой синтаксис неверен или я что-то упустил? Любая помощь приветствуется ..

Ответы [ 2 ]

0 голосов
/ 25 июня 2018

Это работает для меня в macOS High Sierra:

to inputByID(theId, theValue)
    tell application "Google Chrome"
        open location "https://www.google.com"
        repeat until (loading of active tab of front window is false)
            delay 0.1
        end repeat
        tell active tab of front window
            execute javascript "document.getElementById('" & theId & "').value = '" & theValue & "';"
        end tell
    end tell
end inputByID

inputByID("lst-ib", "Hello World!")

Помимо того, что ваша execute javascript ... строка кода была немного искажена, вы можете сравнить свою с моейкроме того, вы также не сказали Google Chrome, где должна быть выполнена строка execute javascript ... кода кода .Следовательно, например: tell active tab of front window

Кроме того, после использования open location ... команда вам также придется ждать target строки execute javascript ... код существует, следовательно, используется строка repeat until (loading of active tab of front window is false) с кодом код после open location ... команды и до строки execute javascript ... код .

0 голосов
/ 25 июня 2018
" document.getElementById('" & theId & "').value = '" & theValue & "'"

Возможно, вам нужно удалить пробелы до и после theId

, чтобы оно стало ('myId') вместо (' myId ')

, а также добавить цитату в конце.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...