181 lines
6.9 KiB
JavaScript
181 lines
6.9 KiB
JavaScript
|
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="<HR color='red'>"+
|
|||
|
"ВНИМАНИЕ: " + errorText.bold() + "<HR color='red'>";
|
|||
|
}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="<HR color='red'>"+
|
|||
|
"ВНИМАНИЕ: " + errorText.bold() + "<HR color='red'>";
|
|||
|
}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="<HR color='red'>"+
|
|||
|
"ВНИМАНИЕ: " + errorText.bold() + "<HR color='red'>";
|
|||
|
}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;
|
|||
|
}
|
|||
|
}
|