Ajax Запрос - как вывести ИД родителя?

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

Ajax Запрос - как вывести ИД родителя?

Сообщение alcompstudio »

Добрый день!

Хочу получить ИД родителя записи в поле Ajax Запрос, но вместо этого получаю Array.

Проверяю такой конструкцией:

http://joxi.ru/DmB5qDDHgKvwwr

Как построить правильно?
Версия 2.9.2
Аватара пользователя
Antonyous99
Сообщения: 752
Зарегистрирован: 18 авг 2019, 09:22
Имя: Антон Владимирович
Откуда: Санкт-Петербург
Организация: ООО "РИКОМ-Сервис"
Контактная информация:

Re: Ajax Запрос - как вывести ИД родителя?

Сообщение Antonyous99 »

Так посмотрите, что там в этом array:

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

print_r($parent_item);
ПУЛЬТ УПРАВЛЕНИЯ БИЗНЕСОМ
ERP/CRM "под ключ"
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Ajax Запрос - как вывести ИД родителя?

Сообщение alcompstudio »

Antonyous99 писал(а): 24 ноя 2021, 21:23 Так посмотрите, что там в этом array:

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

print_r($parent_item);
Спасибо, уже глянул в инструкцию, оказалось, что нужно вытаскивать через $_POST. Но проблема в другом у меня в целом:

Есть сущности:

Ставки
- Транспортные средства (ТС)

И там и там есть однотипное поле сущность аякс, которое связано с одной и той же сущностью (сторонней). Так вот я хочу передавать при создании записи в ТС значение из родителя Ставки (т.е. в ставках заполнено поле Сущность Аякс и его же нужно поместить в такое же поле Сущность Аякс дочерней записи ТС - "передать").

Использую такой код

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

$parent_item = $_POST['parent_item_id'];

$tk_query = db_query("select field_1481 from app_entity_88 where id=" . $parent_item);
if($tk = db_fetch_array($tk_query))
{

  echo '<script>$("#fields_5899").val(' . $tk['id'] . ').trigger("change").trigger("chosen:updated")</script>';
  
}
где 1481 - поле Сущность Аякс в Ставках (ИД 88 - родитель)
5899 - Сущность Аякс в ТС (дочерний).

Результат кода такой:

http://prntscr.com/20ss9c3

Даже пытался принудительно вставить полученный ИД 441 в поле через код

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

$tk1 = '441';
  
    echo '<script>$("#fields_5899").val(' . $tk1 . ').trigger("change").trigger("chosen:updated")</script>';
но, похоже или что-то не так делаю, или с полем Аякс такое не работает...
Аватара пользователя
Antonyous99
Сообщения: 752
Зарегистрирован: 18 авг 2019, 09:22
Имя: Антон Владимирович
Откуда: Санкт-Петербург
Организация: ООО "РИКОМ-Сервис"
Контактная информация:

Re: Ajax Запрос - как вывести ИД родителя?

Сообщение Antonyous99 »

Так вы выбираете только одно поле 1481:

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

...select field_1481 from app_entity_88...
Надо добавить ID

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

...select field_148,id from app_entity_88...
Или вообще всю строку выбирать

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

...select * from app_entity_88...
Теперь вы сможете обращаться к значению полей, как к элементам массива, например:
$tk['id'] $tk['field_148'] и так далее
ПУЛЬТ УПРАВЛЕНИЯ БИЗНЕСОМ
ERP/CRM "под ключ"
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Ajax Запрос - как вывести ИД родителя?

Сообщение alcompstudio »

Antonyous99 писал(а): 25 ноя 2021, 01:36 Так вы выбираете только одно поле 1481:
...
Да, именно его ИД мне и нужно. Т.е. это поле сущность аякс, мне его нужно считать и передать в другое поле 5899.

Ваша подсказка навела на мысль, спасибо, но чуть по другому нашел )

http://joxi.ru/Vm6El77SRN8blr

Теперь проблема именно в подстановке этого значение в поле 5899 текущей сущности. Предполагаемый код, который должен это сделать, не работает

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

echo '<script>$("#fields_5899").val(' . $tk['1481'] . ').trigger("change").trigger("chosen:updated")</script>';
В итоге, хочу, чтобы в форме в поле 5899 было размещено значение http://joxi.ru/D2PkGQQFBN8vLm
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Ajax Запрос - как вывести ИД родителя?

Сообщение support »

Теперь проблема именно в подстановке этого значение в поле 5899 текущей сущности. Предполагаемый код, который должен это сделать, не работает
Для ajax поля этот код не подходит. Он для обычного списке, где используется библиотека "chosen"

Для ajax списка, где самого списка в форме нет, так как значения выбираются через ajax запрос, вам нужно подставить свое значение в список и затем выбрать его

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

$('#fields_5899').append('<option value="1">optionText</option>').val(1).trigger("change");
1 - это ID значения
optionText - название значения.
Аватара пользователя
alcompstudio
Спонсор
Спонсор
Сообщения: 1519
Зарегистрирован: 03 янв 2016, 20:42
Имя: Александр
Откуда: Мир

Re: Ajax Запрос - как вывести ИД родителя?

Сообщение alcompstudio »

support писал(а): 25 ноя 2021, 11:19
Теперь проблема именно в подстановке этого значение в поле 5899 текущей сущности. Предполагаемый код, который должен это сделать, не работает
Для ajax поля этот код не подходит. Он для обычного списке, где используется библиотека "chosen"

Для ajax списка, где самого списка в форме нет, так как значения выбираются через ajax запрос, вам нужно подставить свое значение в список и затем выбрать его

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

$('#fields_5899').append('<option value="1">optionText</option>').val(1).trigger("change");
1 - это ID значения
optionText - название значения.
Спасибо за подсказку, но тут мои познания заканчиваются.. ) Как это использовать... ? "optionText" - это для чего и как его "вытащить" ?

Я получаю ID значения в "$tk['field_1481'];"

echo $tk['field_1481'];

Значит код как-то так должен выглядеть?

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

$parent_item = $_POST['parent_item_id'];

$tk_query = db_query("select field_1481 from app_entity_88 where id=" . $parent_item);
if($tk = db_fetch_array($tk_query))
{
	//echo $tk['field_1481'];

echo '<script>$('#fields_5899').append('<option value="1">optionText</option>').val(' . $tk['field_1481'] . ').trigger("change")</script>';
}
а это выражение

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

'<option value="1">optionText</option>'
как правильно записать?
Аватара пользователя
support
Техническая поддержка
Сообщения: 7661
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Ajax Запрос - как вывести ИД родителя?

Сообщение support »

value="1" - вместо 1 нужно указать id родительской записи.
optionText - выбрать поле заголовок из родительской записи
Ответить