Проблема вставка цифр в простые входные поля с использованием селена Basic и JavaScriptHtml

Программисты Html
Ответить
Anonymous
 Проблема вставка цифр в простые входные поля с использованием селена Basic и JavaScript

Сообщение Anonymous »

Веб-страница https://www7.skatteverket.se/portal/rakna-ut-skatt (шведски Br /> Для вашей информации веб -страница, по -видимому, построена с использованием некоторых Vue Framework, а также содержит много вложенных теневых корней, которые можно увидеть в DOM, используя инструмент разработчика браузеров и смотрящий на вкладке элемента. < /p>
Чтобы выяснить, сколько налогов заплатить, вам необходимо ввести много справочной информации в поля ввода. Эти входные поля могут быть радиопроизводными или комбинированными полями, раскрывающимися входами или входами текста плана, обычно в форме цифр. Также другие кнопки, такие как кнопки «Далее» или кнопки «развернуть», чтобы обнаружить больше входных полей, довольно распространены. p>
Но вместо этого я хочу программировать всю справочную информацию из информации в листе Excel, используя Technics, такую ​​как VBA, JavaScript и Selenium basic. < /p>
Для Большая часть этого уже работает очень хорошо. Но у меня есть конкретная проблема при программном введении текста (цифр) в простое поле ввода. вводит в него, и все другие виды полей, необходимо нажать кнопку «Следующее», чтобы добраться до следующего раздела веб -страницы, с обычно более разными видами полями ввода. < /p>
Он работает с использованием VBA, JavaScript и Selenium для ввода текста (цифры) в поле простого ввода, а программно введенное значение отображается на веб -странице. Кнопка, чтобы прийти в следующее раздел веб -страницы, текст, введенный в поле простого ввода, исчезает, и отображается сообщение об ошибке, сообщающее вам, что вам нужно ввести значение в поле ввода. < /p>
Эта ошибка возникает только для простых полей ввода, а не для раскрывающихся или комбинированных поля. и отображается, ошибка исчезает, а следующий раздел веб -страницы отображается, когда вы также нажимаете кнопку «Далее». то же значение вводится в простое поле ввода вручную или программно. ситуации. Поэтому я исследовал, используя инструмент разработчика браузеров, какие слушатели событий присутствуют на полях ввода, а также на его предках. Введите фокус, изменение и размытие.
Чтобы понять и войти, какие слушатели событий запускаются, и в каком порядке я переопределял исходный метод диспетчеры, используя код JavaScript ниже.

// Save the original dispatchEvent method
const originalDispatchEvent = EventTarget.prototype.dispatchEvent;

// Override dispatchEvent
EventTarget.prototype.dispatchEvent = function (event) {
// Log which event type was fired
console.log(`Event type fired: ${event.type}`);

// Log the element that triggered the event
console.log("Event target:", event.target);

// Log the dispatched event
console.log("Event dispatched:", event);

// If the event has a 'detail' property, log it
if (event.detail) {
console.log("Event detail:", event.detail);
}

// Call the original dispatchEvent method
return originalDispatchEvent.call(this, event);
};

< /code>
фокусируется на рассматриваемом поле ввода при введении значений (цифр) в него вручную. Был программно заполнен цифрами. Было отправлено следующее событие Listernas: фокус, ввод, изменение и размытие, используя следующий код: < /p>

actionNode.focus(); // Step 1: Focus
actionNode.value = actionCont; // Step 2: Set
actionNode.dispatchEvent(new Event('input', { bubbles: true })); // Step 3: Trigger input
actionNode.dispatchEvent(new Event('change', { bubbles: true })); // Step 4: Trigger change
actionNode.blur(); // Step 5: Remove focus

< /code>
Ничто из этого не сделало проблему исчезнуть. Цифры, которые программно вставляются в поле ввода и отображаются на веб -странице, все еще исчезают, когда нажимает кнопка «Следующая». < /P>
Мне нужна серьезная помощь, чтобы исправить эту ситуацию. /п>

Подробнее здесь: https://stackoverflow.com/questions/794 ... -javascrip
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Html»