Перейти к содержимому


как в js получить данные другой таблицы


Сообщений в теме: 3

#1 jazvenko

    Активный участник

  • Пользователи
  • PipPipPip
  • 224 сообщений

Отправлено 09 Август 2012 - 10:42

добрый день,

подскажите как с помощью JS вычисления получить данные из других таблиц, или хотябы из полей связей.

Чтобы когда пользователь ввел например АРТИКУЛ товара в одном поле, то в полях ниже автоматически наименование, описание и тд.

Как такое реализовать?

#2 Гость_Roman_*

  • Гости

Отправлено 09 Август 2012 - 12:29

Данное действие можно выполнить в два этапа, создав, собственно, сам JavaScript c ajax и написав вычисление. Например, поле артикул - это поле связи с id 555. Необходимо подтянуть ид артикула в поле с id 444. Вычисление для обработки можно написать в доп. действии. Оно должно просто отдать какой-то результат, например:
echo "ИД Артикула: ".$_REQUEST['article'];
exit;
Javascript:
$("#value555").bind("change", function() {
  art_val = document.getElementById("value555").value;
  $.ajax({
	type: "POST",
	url: "user_button.php",
	data: { id: '888', line: '{$line_id}', aricle: art_val },
	success: function(msg) {
	  document.getElementById('value444').value = msg;
	}
  });
});
Обратите внимание на 888 - ид доп. действия.
Данный пример выведет в поле с ид 444 значение вида "ИД Артикула: 111". Дописав вычисление и Javascript под Вашу конфигурацию, можно добиться нужного результата.

#3 bk

    Участник

  • Пользователи
  • PipPip
  • 16 сообщений

Отправлено 12 Декабрь 2013 - 14:03

хочу использовать ajax как написано в постах
http://clientbase.ru...?showtopic=3620
и
http://clientbase.ru...topic=4654&st=0

не работает. эксперименты показали следующее

код допдействия

echo 'проверка';
exit;

код Javascript

$("#value2661").bind("change", function() {

  $.ajax({
		type: "POST",
		url: "user_button.php",
		data: { id: '41' },
		success: function(msg) {
		  alert(msg);
		}
  });
});

результат виден на прилагаемом скриншоте

т.е. вместо ожидаемого текста "проверка" выводится html

результат аналогичен и на нашем сервере и на demo.clientbase.ru (что видно на скриншоте)

пробовал использовать
response: "text" и dataType: "text" - не помогает

пробовал на своем сервере

$("#value2661").bind("change", function() {

  $.ajax({
		type: "POST",
		url: "test.html",
		success: function(msg) {
		  alert(msg);
		}
  });
});

содержимое test.html

<p>проверка</p>

выводит с тегами, plain text получить не удается

помогите пожалуйста решить проблему, не позволяющую использовать возможности КБ, описанные на форуме в указанных выше постах

Прикрепленные изображения

  • Прикрепленное изображение: ajax.png

Сообщение отредактировал bk: 12 Декабрь 2013 - 14:04


#4 Analitic

    Активный участник

  • Пользователи
  • PipPipPip
  • 700 сообщений
  • Пол:Мужчина

Отправлено 12 Декабрь 2013 - 15:43

Сравните
>> data: { id: '888', line: '{$line_id}', aricle: art_val },
и ваш код
>> data: { id: '41' },

где параметр line?

Также обратите внимание данные посылаются методом POST, поэтому нужен параметр csrf!

data: { id: '888', line: '{$line_id}', csrf: '{$csrf}', aricle: art_val },





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных