function btnClick() { var errorText = ""; var INNVal = ""; var urfiz = ""; //urfiz = GetValChackedRadioButton('urfiz'); urfiz = document.querySelector('input[name="urfiz"]:checked').value; INNVal = document.getElementById('INN').value; errorText = ''; if (urfiz == "fiz" & INNVal.length != 0){ errorText = 'Для физ.лиц задавать ИНН не нужно.'; document.getElementById('INN').value = ""; INNVal = document.getElementById('INN').value; } if (urfiz == "fiz" & INNVal.length == 0){ document.getElementById('INN').hidden = true; } if (urfiz == "ur" & INNVal.length == 0){ document.getElementById('INN').hidden = false; } if (errorText != ""){ document.getElementById('ErrorMessage').hidden = false; document.getElementById('ErrorMessage').innerHTML="
"+ "ВНИМАНИЕ: " + errorText.bold() + "
"; }else{ document.getElementById('ErrorMessage').hidden = true; } //alert(document.querySelector("#INN").value); } function checkRegExpValNumber(){ //тут проверяем, а не входит ли случайно введеный символ в инн, // в список НЕ цифр. Если символ не цифра, то ругаемся и удаляем символ. const inn = document.querySelector('input[name="INN"]'); inn.addEventListener('input', updateValueInn); } function updateValueInn(letter){ var reg = /^\d{10}$/; var bukva = letter.target.value; //получаем измененную строку var validNum = reg.test(bukva); if (!validNum) { var errorText = "ИНН должен состоять ТОЛЬКО из цифр и составлять 10 знаков"; document.getElementById('ErrorMessage').hidden = false; document.getElementById('ErrorMessage').innerHTML="
"+ "ВНИМАНИЕ: " + errorText.bold() + "
"; }else{ var errorText = ""; document.getElementById('ErrorMessage').hidden = true; document.getElementById('ErrorMessage').innerHTML=""; } } function checkRegExpValRusNum(){ const strNumDoc = document.querySelector('input[name="strNumDoc"]'); strNumDoc.addEventListener('input', updateValueStrNumDoc); } function updateValueStrNumDoc(letter){ var reg = /^[-\s,а-яА-ЯёЁ0-9]+$/; var bukva = letter.target.value; //получаем измененную строку var validNum = reg.test(bukva); if (!validNum) { var errorText = "Строка с номерами может содержать только кирилицу, тире, числа и запятые \n Пример: ТТ-ЗАК-01234, ЭЛР-СЧ-12345"; document.getElementById('ErrorMessage').hidden = false; document.getElementById('ErrorMessage').innerHTML="
"+ "ВНИМАНИЕ: " + errorText.bold() + "
"; }else{ var errorText = ""; document.getElementById('ErrorMessage').hidden = true; document.getElementById('ErrorMessage').innerHTML=""; } } //***************** K0t0vICH ***************/ function send_data(){ // блочим кнопку отправки запроса //startCheck("submit_btn"); toggleButton("submit_btn"); // удаляем предыдущую таблицу if (document.querySelector('#result_table').childNodes.length>0) { document.querySelector('#result_table').removeChild(document.querySelector('#result_table').childNodes[0]); } // Данные формы const params = { urfiz: document.querySelector('input[name="urfiz"]:checked').value, INN: document.querySelector('#INN').value, strNumDoc: document.querySelector('#strNumDoc').value } var http = new XMLHttpRequest(); http.open('POST', 'action.php', true); http.setRequestHeader('Content-type', 'application/json'); http.onreadystatechange = function() { // Ожидание ответа if(http.readyState == 4 && http.status == 200) { console.log(http.responseText); // проверка приходящих параметров // разблокируем кнопку отправки запроса toggleButton("submit_btn"); var result_table = JSON.parse(http.responseText); // Заголовки таблицы var col = []; for (var i = 0; i < result_table.length; i++) { for (var key in result_table[i]) { if (col.indexOf(key) === -1) { col.push(key); } } } // Создаем таблицу var table = document.createElement("table"); var tr = table.insertRow(-1); // TABLE ROW. for (var i = 0; i < col.length; i++) { var th = document.createElement("th"); // TABLE HEADER. th.innerHTML = col[i]; tr.appendChild(th); } // JSON DATA -> ROWS. for (var i = 0; i < result_table.length; i++) { tr = table.insertRow(-1); for (var j = 0; j < col.length; j++) { var tabCell = tr.insertCell(-1); tabCell.innerHTML = result_table[i][col[j]]; } } // Создаем таблицу в контейнере var divContainer = document.getElementById("result_table"); divContainer.innerHTML = ""; divContainer.appendChild(table); // скролим строницу на таблицу результатов document.getElementById("result_table").scrollIntoView(); } } http.send(JSON.stringify(params)); // упаковываем! }; function startCheck(button_id){ var el = document.getElementById(button_id); var urfiz = document.getElementsByName("urfiz"); if (!urfiz["ur"].checked && !urfiz["ur"].checked){ el.value = "Не выбрано Юр./Физ.лицо" el.disabled = true$ } else { el.value = "Получить данные"; el.disabled = false; } } function toggleButton(button_id) { var el = document.getElementById(button_id); if (el.value == "Запрос обрабатывается...") { el.value = "Получить данные"; el.disabled = false; } else { el.value = "Запрос обрабатывается..."; el.disabled = true; } }