Нужно нажать кнопку ставки с помощью скрипта Grease monkey

Я немного застрял. Я пытаюсь создать скрипт Grease Monkey, который автоматически щелкает всплывающее окно, которое появляется на сайте аукциона. Я получил Xpat, но я слишком опытен с GM, чтобы заставить его работать.

Вот линия проверки элементов, которую я получаю от искателя огня для клопа:

<input type="submit" style="width: 160px;" class="simplemodal-close" id="ctl00_mainContentPlaceholder_Button3" onclick="closePopup(); return false;" value="Back To Auctions" name="ctl00$mainContentPlaceholder$Button3">

и первая строка, строка xpath:

.//*[@id='ctl00_mainContentPlaceholder_Button3']

строка xpather для полного xpath:

/html/body/form[@id='aspnetForm']/div[@id='simplemodal-container']/div/div[@id='basic-modal-content']/div[@id='modal_winningBanner']/div/div[2]/div[2]/input[@id='ctl00_mainContentPlaceholder_Button3']

Итак, что я использовал в своем скрипте gm, чтобы попытаться заставить его нажать на кнопку, так:

// @include *
// @version 0.1
// @description Automatically click // ==/UserScript==

click_popupBtn1 = function() {

var joinBtn=document.evaluate('//*[@id, "ctl00_mainContentPlaceholder_Button3"]'
    ,document,
      null,
     XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
     null).singleNodeValue.click();
  alert(joinBtn);
       if(!joinBtn) return false;
          joinBtn.click();
      return true;
}


click_popupBtn1 ();

Я думаю, что у меня что-то не так в синтаксисе, но я не знаю, как отлаживать GM. Я работал с Turbo Pascal всего несколько лет назад, но хотел бы сделать несколько простых вещей в Java и GM.

Любая помощь будет оценена.

Спасибо Людвиг

2 ответа

Решение

Хм, я не понимаю много слов, которые вы использовали, или этот сложный синтаксис.

но что-то вроде:

document.getElementById("ctl00_mainContentPlaceholder_Button3").click();

должно сработать.

var joinBtn=document.evaluate('//*[@id, "ctl00_mainContentPlaceholder_Button3"]'
                              ,document,      
                               null,     
                               XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
                              null).singleNodeValue.click();

Первый аргумент выше не является синтаксически допустимым выражением XPath.

Должно быть:

//*[@id = "ctl00_mainContentPlaceholder_Button3"]
Другие вопросы по тегам