Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Все вопросы/проблемы по установке и использовании.
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение alcompstudio »

Добрый день, ув. Коллеги!

Есть в форме 2 простых поля ввода - Юридический адрес и Фактический адрес. А также поле с выпадающим списком глобальным (для условия) - Факт. адрес = Юр. адрес . По условию на значение в этом поле "Да" (ИД значения в Глобальном списке - 3872), хочу чтобы в форме введенное значене в поле Юридический адрес скопировалось в поле ввода Фактический адрес. Не получается сделать, что-то не предусмотрел вероятно в коде... Ниже скрин формы с отладкой

http://joxi.ru/krDWGDDHgxnKgA

Настройки такие http://joxi.ru/4AkDaeeH0l4oJr
Глобальный список: http://joxi.ru/KAgDdGGHN7qE8r

Можете ли подсказать, что не учел в коде?
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение alcompstudio »

http://joxi.ru/Vm6El77SRbnjNr -пользовался этим примером в Документации
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение alcompstudio »

Еще такой код пробовал...

Код: Выделить всё

$adress_check = [4358]; //Глобальный список
$value = [1015]; // Юридический адрес
$real_adress = [1016]; // Фактический адрес
	if($adress_check == '3872')
    {
		echo '<script>$("#fields_1016").val(' . $value . ')</script>';
    }
//return false;
Тоже не работает... Еще момент оба поля подвязаны к модулю Дадата, но вроде это не должно мешать скрипту...
Аватара пользователя
Develop-Soft
Сообщения: 599
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение Develop-Soft »

Ну, у вас 2 явных ошибки, а какие могут быть неявные - отсюда не видно...

Так не проще?

Код: Выделить всё

$value = [1015]; // Юридический адрес
$real_adress = [1016]; // Фактический адрес
echo   
'<script>function copy_address() { $("#fields_1016").val("'.$value.'"); } </script>'.
'<button onclick="copy_address()" class="btn btn-default" type="button"><i class="fa fa-arrow-down"></i> Копировать</button>';
//return false;
Изображение
nruslan2
Сообщения: 2435
Зарегистрирован: 14 окт 2020, 09:13
Имя: Ruslan
Откуда: Moscow

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение nruslan2 »

какие две явные ошибки по вашему?

так как код рабочий и на тестовой базе спокойно отрабатывает! тока лишния переменная есть (так же как и в вашем!)
но вот почему у автора он не работает без понятия!
Аватара пользователя
Develop-Soft
Сообщения: 599
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение Develop-Soft »

nruslan2 писал(а): 20 сен 2021, 07:55 тока лишния переменная есть (так же как и в вашем!)
Оставил ее как есть, не знаю зачем она ТС-у...
nruslan2 писал(а): 20 сен 2021, 07:55 какие две явные ошибки по вашему?
alcompstudio писал(а): 19 сен 2021, 19:16 if($adress_check == '3872')
Насколько я понимаю, требуется сравнение с числом а указан текст. Хотя и не проверял, хавает ли php такую подачу. (в других языках '3872' не равно 3872)
alcompstudio писал(а): 19 сен 2021, 19:16 echo '<script>$("#fields_1016").val(' . $value . ')</script>';
Нет дополнительного обрамления внутри val, и туда попадет (текст) вместо ("текст").

Из неявных: я не знаю, как реализовано подключение дадаты, если jquery-плагином, который они рекомендуют, то возможно он конфликтует внутренним аяксом.
nruslan2
Сообщения: 2435
Зарегистрирован: 14 окт 2020, 09:13
Имя: Ruslan
Откуда: Moscow

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение nruslan2 »

php точно ест такое
у php есть == и === (вот последнее как раз видит разницу)

а про value в ковычках хмм возможно (делали правда по инструкции), однако тогда почему это работает на тестовом сервере?
Аватара пользователя
Develop-Soft
Сообщения: 599
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение Develop-Soft »

nruslan2 писал(а): 20 сен 2021, 08:54 тогда почему это работает на тестовом сервере?
Оно прокатит, если без кавычек туда попадет число. Возможно на тестовом сервере был ввод типа "123123".
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение alcompstudio »

Спасибо за помощь Руслан и вам, Владимир за доп.код и указанную ошибку по обрамлению в кавычках val - действительно в этом была ошибка, хотя в примере разработчика так не указано - там обрамление в одинарные кавычки, без дополнительного обрамления в двойные (или я код неправильно понял...)

$real_adress = [1016]; - это я просто вывел, чтобы видеть исходное значение Фактического адреса, и подставлял сначала эту переменную в echo вместо "прямого поля" из БД #fields_1016

Сработал такой код

Код: Выделить всё

$adress_check = [4358]; //Глобальный список
$value555 = [1015]; // Юридический адрес
$real_adress = [1016]; // Фактический адрес
	if($adress_check !== '3871')
    {
		echo '<script>$("#fields_1016").val("' . $value555 . '")</script>';
      // $real_adress = $value555;
      // $form_field_value = $real_adress;

    }
else return false;
Там я еще пытался по другому "накодить" )) - закомментированные строки, но такой код работает. Самое интересное (нашел в сети такой подход, не понял почему именно так должно быть...), что проверка IF не срабатывала - echo не реагировало на условие, как будто игнорировало его и все время копировало поле, что бы я ни поставил в поле Фактический адрес и поле с выпадающим списком - все равно поле Фактические адрес перезаписывалось.

Но вот такая строка "if($adress_check !== '3871')" - как бы "отрицание противоположного" - работает... т.е. в место вполне логичного if($adress_check = '3872').

Ввиду скудных познаний в языках программирования, не могу полностью объяснить сие "волшебство" ))
Аватара пользователя
Develop-Soft
Сообщения: 599
Зарегистрирован: 27 мар 2019, 01:22
Имя: Владимир
Откуда: Россия, Белгород
Контактная информация:

Re: Ajax Запрос - копирование из одного поля ввода в другое по условию из глобального списка - нужна помощь

Сообщение Develop-Soft »

alcompstudio писал(а): 20 сен 2021, 10:24 Но вот такая строка "if($adress_check !== '3871')" - как бы "отрицание противоположного" - работает... т.е. в место вполне логичного if($adress_check = '3872').
У вас в списке всего 2 значения и у вас очевидно выбрало первое по условию "кто угодно, только не единая Россия"...
Ответить