Как вызвать функцию JavaScript с помощью onchange Event, если мое входное значение изменилось с помощью метода Java
Я получаю значение в моем входе таким образом:
<input style="width:200px; display:none;" readonly="" type="text" id="abc" placeholder="30.30" value="#{position.layers}"></input>
Как я могу вызвать функцию JavaScript, если значение изменилось.
function callme() {
alert("ok");
}
Если я сам ввожу значение, метод вызывается, но если значение изменяется на "#{position.layers}", функция не вызывается.
<input style="width:200px; display:none;" readonly="" type="text" id="abc" placeholder="30.30" value="#{position.layers}" onchange="callme()"></input>
2 ответа
Вы не можете инициировать событие изменения напрямую, если вы передаете значение, используя другое среднее
var element = document.getElementById('abc');
var event = new Event('change');
element.dispatchEvent(event);
Вместо этого вам нужно создать событие изменения и попытаться вызвать ваше событие изменения, добавить приведенный выше код после того, как вы измените значение типа ввода. Остальной код хорош тем, что ничего не нужно менять.
Самый простой способ - проверить значение слоев позиции и, когда оно равно значению, которое вы ищете, вызовите вашу функцию. Так что-то вроде этого:
function callme(){
alert("ok");
}
function doNotCall(){
alert("No Way");
}
if(position.layers == someValue){
callme();
}else{
doNotCall();
}