2017-02-22 5 views
1

В проекте Java я использую JxBrowser.Слушайте изменения на странице с помощью JxBrowser

У меня есть страница

<!DOCTYPE html> 
<html> 
<body> 

Start: <input type="text" id="startTimeField"> ms 
<hr> 
<button id="buttonToClick" onclick="myFunction()">Start</button> 

<script> 
    function myFunction() { 
     document.getElementById('startTimeField').value = new Date().getMilliseconds(); 
    } 
</script> 

</body> 
</html> 

загружает страницу правильно с JxBrowser.

Когда нажимается кнопка «Пуск», устанавливается значение ввода текста.

Я хочу добавить слушателя, используя JxBrowser объект в Java, чтобы прослушать startTimeField изменения ввода текста.

Ex: startTimeField выставиться на 0, после щелчка кнопки Start значение изменения поля (по фактическому времени мс), и я хочу это обнаружить изменения в Java коде и получить значение изменения.

+1

Возможно, вы захотите исправить это: '(« startTimeField »), вы забыли двойную кавычку, поэтому она должна быть' («startTimeField») ' – Jer

+0

Спасибо, я исправлю это;) – ACz

ответ

1

Поскольку вопрос в основном спрашивает, как слушать события в DOM в Java, я думаю, что это то, что вы ищете:

JxBrowser - DOM Events

Вам нужно будет сделать что-то похожее на это (в вашем Java-коде):

DOMElement element = browser.getDocument().findElement(By.id("startTimeField")); 
element.addEventListener(DOMEventType.OnChange, new DOMEventListener() { 
    public void handleEvent(DOMEvent event) { 
     // your code for reacting to the change here 
    } 
}, false); 

Я не тестировал этот код, но адаптировал его из документации, поэтому он не может компилироваться и работать сразу, но это должно привести вас к правильному пути.

1
<input type="text" id="startTimeField" onchange="yourfunction"> 

Посмотрите на reference

Смежные вопросы