При нажатии на кнопку вызывается функция в которой есть ajax запрос к БД После получения ответа от БД, нужно изменить значение существующего тега input на странице на значение из БД. Как это сделать ? использовал ajax и грузил результат в div, а как загрузить ответ от ajax запроса в существующий тег input?
index.php: HTML: <input type="text" id="input"> <input type="button" value="Загрузить значение из БД" id="but"> Делаем запрос через ajax в name.php: Код (Javascript): $("#but").click(function call() { $.ajax({ url: "name.php", type: "POST", data: ({ name: $("#input").val() }), success: function(data) { $('#input').val( data ); // здесь задаете новое значение для инпута } }); }); В name.php вытягиваете все что вам нужно из БД. Для примера name.php: PHP: header('Content-Type: text/html; charset=utf-8'); echo 'Значение из БД: '.$_POST['name'];
работает спасибо! Только сразу вопрос а если БД отдает несколько значений и их нужно присвоить разным input как тогда ? что должен возвращать name.php и как в ajax функции получить результат ?
тогда почитай, что такое JSON. Сервер возвращает JSON-строку, на странице ты её распарсиваешь и работаешь
почитал то что нужно! еще вопрос почему то тегу textarea с id=1 не могу присвоить значение пробовал так Код (Javascript): $('textarea[id="1"]').val(123); и так Код (Javascript): $('textarea#1]').val(123); подскажите плз правильный синтаксис для textarea
Он там есть... нуу... вижу что разобрались А вот "innerText" это чистый JS без Jquery, и value у JS, как не странно, тоже есть
да да вот и я о чем --- Добавлено --- Успел прочитать то что вы удалили и я полностью согласен с тем что вы там написали.
Вот так живешь себе никого не трогаешь и тут такое озарение и так работает и этак и не подкопаешься) Код (Javascript): $('#test1').text(1); $('#test2')[0].innerText = 2; document.getElementById('test3').innerText = 3 $('#test4').val(4); $('#test5')[0].value = 5; document.getElementById('test6').value = 6
Отдаленно понимаю как работает, но работает же как-то такая конструкция , вы понимаете как она работает? Можете объяснить? Приблизительно понятно для чего [0] но ноль у id?, id же может быть только один- это совсем вводит меня в заблуждения. Или это что-то из разряда eq Код (Javascript): $('#test5:eq('+0+')').innerText = 2; Но опять же по id он навряд ли будет работать (по id не пробовал)
Есть классная вещь. Называется console.log($('#test2')) Код (Javascript): const $ = jquery $() = // функция $('#a') // результат работы функции
@nospiou То что выдает консоль ▶0: textarea#test2 Если я правильно понял то это массив или объект (не знаю как правильно) содержащий в себе всего 1 элемент , так? То есть это: Код (Javascript): $('#test2')[0].innerText = 2; эквивалентно этому: Код (Javascript): document.querySelector('textarea#test2').innerText = 2; Правильно я понял?
Открой здесь консоль и пропиши Код (Javascript): $("#XenForo")[0] === document.getElementById("XenForo") На треугольник можно нажать. И каждое свойство тоже можно законсолить console.log($('#test2')[0])
С консолью знаю как обращаться. то есть в данном случае Код (Javascript): $('#test2')[0].innerText = 2; [0] это свойство?
Да. Но как ты сам уже писал выше вызвать его как obj.0 ты не можешь поэтому вызываешь как obj[0]. Как пример obj.test тоже можно вызвать как obj['test']