По клику посчитать сумму "значения поля" + 0.01 и вставить в поле

в Selenium хочу написать скрипт - при клике по кнопке в текстовом поле должно посчитаться значение поля + 0.01

Делаю вот так

CHROME_BROWSER.ExecuteScript(
  "arguments[0].addEventListener('click', () => {arguments[1].value = Number(arguments[1].getAttribute('value')) + 0.01});", 
  {EL_PLUS, EL_НДС}
)

но в текстовое поле вставляется только 0.01

arguments[0] = EL_PLUS (это кнопка)

arguments[1] = EL_НДС (это текстовое поле)

Подскажите пожалуйста как это правильно написать


Сделал вот так сумму считает теперь

CHROME_BROWSER.ExecuteScript(
  "arguments[0].addEventListener('click', () => {summa = parseInt(arguments[1].value) + 0.01; arguments[1].value = summa;});", 
  {EL_PLUS, EL_НДС}
)

но теперь другая проблема: если в поле 3,5, то должно получится 3,5 + 0,01 = 3,51, а в поле вставляется 3,01

подскажите пожалуйста как это исправить


Ответы (1 шт):

Автор решения: Сергей

Решено

CHROME_BROWSER.ExecuteScript("arguments[0].addEventListener('click', () => {summa = Number(arguments[1].value.replaceAll(' ', '')) + 0.01; arguments[1].value = summa.toFixed(2); arguments[1].dispatchEvent(new Event('input', { bubbles: true }));});", {EL_PLUS, EL_НДС})

считает сумму, округляет, вставляет в поле и принудительно обновляет поле

→ Ссылка