18.05.2016, 17:20
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
NeilDaniels,
Сообщение от NeilDaniels
|
Мне нахер (извиняюсь за французский) принятые данные не нужны в скрипте-функции вызова серверного скрипта с передачей данных, мне они нужны в блоке div,
|
А нахер они вам нужны в div?
Обработка делается средствами скриптов, а не средствами html
Ловить их там не нужно - $("#receiv").text(data); или $("#receiv").html(data); их именно туда и положит
Последний раз редактировалось Dilettante_Pro, 18.05.2016 в 17:23.
|
|
18.05.2016, 17:31
|
Аспирант
|
|
Регистрация: 18.05.2016
Сообщений: 35
|
|
В целом учебная задача такая.
Есть некая форма накладной, данные хранятся в таблице БД. Есть форма вывода данных из ТБД, есть форма добавления накладной.
По двойному клику на строке таблицы должна открываться форма редактирования накладной с уже заполненными полями. (Да, делаю через пятую точку, когда для заполнения полей формы делаю запрос к БД, а не заполняя поля напрямую из строки уже выведенной таблицы. По своим непонятным соображениям). По двойному клику передаю id строки на серверный скрипт, по запросу получаю данные из БД, и застрял на том, что не могу передать данные в div блок, в котором формируется форма редактирования (div блок изначально скрытый, рисуется через jqModal).
|
|
18.05.2016, 17:33
|
Аспирант
|
|
Регистрация: 18.05.2016
Сообщений: 35
|
|
Сообщение от Dilettante_Pro
|
NeilDaniels,
А нахер они вам нужны в div?
Обработка делается средствами скриптов, а не средствами html
Ловить их там не нужно - $("#receiv").text(data); или $("#receiv").html(data); их именно туда и положит
|
И как взять положенные $("#receiv").html(data)-ом? Эти данные тупо выводятся на экран, а мне они нужны в переменных div-а.
|
|
18.05.2016, 17:38
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
NeilDaniels,
В div нет переменных - там есть (могут быть) элементы html
Переменные есть в скрипте, о чем вам так многократно и говорится.
Получили в скрипте data, разобрали их там же как угодно, сформировали массивы или что угодно - и делайте с ними что хотите. При чем тут div?
|
|
18.05.2016, 17:41
|
Аспирант
|
|
Регистрация: 18.05.2016
Сообщений: 35
|
|
Сообщение от Dilettante_Pro
|
NeilDaniels,
В div нет переменных - там есть (могут быть) элементы html
Переменные есть в скрипте, о чем вам так многократно и говорится.
Получили в скрипте data, разобрали их там же как угодно, сформировали массивы или что угодно - и делайте с ними что хотите. При чем тут div?
|
В div - код модального окна. И как получить разобранные данные из скрипта, если эти данные локального характера, и за пределы скрипта их не сунуть?
|
|
18.05.2016, 17:46
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
NeilDaniels,
Сообщение от NeilDaniels
|
В div - код модального окна. И как получить разобранные данные из скрипта, если эти данные локального характера, и за пределы скрипта их не сунуть?
|
Скриптом какие угодно данные можно сунуть куда угодно - в любой элемент html
|
|
18.05.2016, 17:50
|
Аспирант
|
|
Регистрация: 18.05.2016
Сообщений: 35
|
|
Сообщение от Dilettante_Pro
|
NeilDaniels,
Скриптом какие угодно данные можно сунуть куда угодно - в любой элемент html
|
Ну попробую...
|
|
18.05.2016, 17:56
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,990
|
|
Сообщение от NeilDaniels
|
Если только делать дополнительную проверку на случай того, что в id вдруг будет не целое число (хотя передаётся именно только число, и целое)?
|
(int) или (integer), это приведение значения к типу INTEGER, а ни как не получение абсолютного значения. И делается это в первую очередь в целях безопасности (читайте об инъекциях баз данных),и только во вторую очередь не делать бесполезный запрос.
Сообщение от NeilDaniels
|
Ну приму не массив как он есть, а данные в формате JSON. Как набор данных в формате JSON разобрать в блоке #receive на стороне клиента?
|
Я уже писал как - обходом в цикле формировать по данным html-код. Примеров этому масса и на данном форме, а конкретно ваших данных никто не знает.
Сообщение от NeilDaniels
|
Но сформировать таблицу серверным скриптом, передать её до клиента, где JS (?) формирует эту же таблицу, - а не закапризничает ли функционал вывода модального окна, где должна быть таблица (+ кнопка, по нажатию на которую пойдёт запрос на обновление строки в таблице БД)? Не проще ли на клиенте принять данные и сформировать в таблицу в модальном окне?
|
Вы читаете внимательно или как? Я описал два способа - один это сервер формирует ГОТОВЫЙ код html таблицы или иного нужного, а второй, это клиент сам готовит этот код вставляя в него полученный массив от сервера. Какие могут быть формировать таблицу серверным скриптом, передать её до клиента, где JS (?) формирует эту же таблицу, это вы по собственному представлению два способа в кучу, и еще задаете вопрос.
Сообщение от NeilDaniels
|
Не проще ли на клиенте принять данные и сформировать в таблицу в модальном окне?
|
Перечитайте внимательно написанное мною выше. А по поводу модального окна, оно такое же окно и модальное, как и бабушкина авоська является кейсом.
Сообщение от NeilDaniels
|
мне они нужны в блоке div, который лежит за пределами JS функции.
|
Вот это интересно - это как?
|
|
18.05.2016, 18:07
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
NeilDaniels,
Сообщение от NeilDaniels
|
Ну записывал в скрипте в переменную полученные данные (просто возвращал тот же id), и ничего, за пределами скрипта переменная не видна.
|
Что значит не видна? Переменные никогда не видны - видны элементы html
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<div id="receiv">
<input id="testdata" type="text" value='' />
</div>
<script>
var data = "Какие-то данные";
$('#receiv #testdata').val(data);
</script>
|
|
20.05.2016, 20:05
|
Аспирант
|
|
Регистрация: 18.05.2016
Сообщений: 35
|
|
Dilettante_Pro,
т.е.
$.post('transmission.php', {'id' : id}, function(data){$("#receiv").html(data);}, datatype: json; );
//получили ответ в формате json
var massiv = JSON.parse(data);
и далее разбирать так? Или опять не то?
$val1 = massiv.val1;
$val2 = massiv.val2;
|
|
|
|