У нас есть клиент, который заполняет простые формы онлайн, обычно используя Windows в качестве ОС; различные браузеры используются. Это работает нормально в большинстве случаев, однако, очень редко процесс отправки не удается. Код для подачи ниже:
<a onclick="return beginLoad(true,1,'Your Data is being submitted, Please Wait',false,'');" id="btnSubmitRPT" class="Tool-Lbl-Footer" href="javascript:__doPostBack('btnSubmitRPT','')">SUBMIT</a>
Метод начала загрузки показывает традиционный вращающийся круг при выполнении запроса к серверу; это всегда возвращает истину. Однако, когда возникает эта проблема, во время мониторинга сетевого трафика в Chrome с помощью инструментов разработчика, на сервер не поступает никаких запросов; обычно мы видим XHR, но нет запроса. Со стороны сервера мы также можем видеть это, поскольку журналы пусты во время периода отправки, то есть с сервером не связывались. Это привело нас к мысли, что в самой структуре есть проблема, которая вызывает какую-то ошибку и прерывает процесс отправки, но мы не знаем, что это может быть
Мы знаем, что код попадает в строку под формой .__ EVENTTARGET.value = eventTarget; поскольку скрытое поле ввода формы __EVENTTARGET установлено со значением 'btnSubmitRPT', тем не менее, похоже, что theForm.submit () не выполняется или по какой-то причине прерывает код, приведенный ниже:
var theForm = document.forms['webform'];
if (!theForm) {
theForm = document.webform;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
Кто-нибудь знает, почему это происходит с перебоями, даже когда пользователь помещает в форму одни и те же данные, иногда это иногда срабатывает, а это не так. Кажется, что нет такого поведения. Еще более странно то, что если вы снова нажмете кнопку отправки, запрос будет отправлен, так что работайте.
Это происходит во всех браузерах. Странно то, что мы никогда не сталкивались с этим ни с одним из наших клиентов, использующих наше программное обеспечение.
Если кто-нибудь может помочь, дайте нам несколько советов о том, где искать решение этой проблемы или какое-то волшебное решение, которое было бы замечательно.
Всего наилучшего,
Стюарт.