VBScript и JScript, похоже, обрабатывают метод element.click по-другому. Зачем? - PullRequest
0 голосов
/ 02 апреля 2010

ребята. Вот еще один пример сценария в VBScript. Он открывает Internet Explorer, переходит на Google, настраивает поле поиска и отправляет запрос.

set ie = CreateObject("InternetExplorer.Application")

ie.navigate("www.google.com")

ie.visible = true

while ie.readystate <> 4
    wscript.sleep 100
WEnd

set fields = ie.document.getelementsbyname("q")
set buttons = ie.document.getelementsbyname("btnG")

fields(0).value = "some query"
buttons(0).click

Все идет хорошо.

А вот сценарий на JScript, который должен делать то же самое:

var ie = new ActiveXObject("InternetExplorer.Application");

ie.visible = true;
ie.navigate("www.google.com");

do {
    WScript.Sleep(100); 
} while (ie.readystate !== 4);

var input = ie.document.getElementsByName("q");
var button = ie.document.getElementsByName("btnG");

input(0).value = "some query";  
button(0).click;

Правильно настраивает поле поиска для «некоторого запроса», но не нажимает кнопку! Буквально ничего не происходит после input(0).value = "some query"; строки.

Я новичок в JScript, поэтому мне интересно, был ли я глупым и неосведомленным о некоторых конкретных деталях или нет?

1 Ответ

1 голос
/ 02 апреля 2010
button(0).click;

Ссылка на функцию.

button(0).click();

Будет вызовом функции.

(Кроме того, разве это не квадратные скобки?)

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