Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/46: Рейтинг темы: голосов - 46, средняя оценка - 4.61
 Аватар для Tdutybq
8 / 3 / 1
Регистрация: 18.01.2012
Сообщений: 83

Вывод результата в том же окне

20.12.2012, 20:41. Показов 9118. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
к примеру есть страница html и скрипт php(он не в хтмл, а вынесен отдельно в файл). По нажатию кнопки выполняется скрипт. Как сделать, чтобы результат скрипта выводился не на новую страницу, а в блок <div> та той же странице html.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.12.2012, 20:41
Ответы с готовыми решениями:

Вывод результата в том же блоке
Всем привет! Никак не могу понять, как сделать, чтобы после заполнения формы, сообщение &quot;Форма заполнена&quot; Выводилась тут же. Это...

Вывод результата в окне
вопрос№1 как что я делаю не так, вопрос№2 как сделать, чтобы результат выводился в окне result?

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

16
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.12.2012, 12:11
аяксом отправлять запрос на этот скрипт и полученный ответ вставлять в нужный див

Добавлено через 38 секунд
либо в самом коде добавить проверку на нажатие кнопки и подключить его в нужном месте страницы
0
 Аватар для Tdutybq
8 / 3 / 1
Регистрация: 18.01.2012
Сообщений: 83
22.12.2012, 13:08  [ТС]
More variants???
0
 Аватар для suharik
261 / 247 / 57
Регистрация: 03.09.2010
Сообщений: 805
22.12.2012, 13:48
Аякс, что тут еще придумывать.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
22.12.2012, 14:05
Tdutybq, вам мало этих двух вариантов?

Добавлено через 8 минут
HTML5
1
2
3
4
5
6
7
<form method="post">
<input type="submit" name="foo" value="...">
</form>
<div id="answer">
  <?php if(isset($_POST['foo'])) require './handler.php'; ?>
</div>
......
handler.php
PHP
1
2
3
<?php 
//code here
?>
второй вариант, почти такой же
HTML5
1
2
3
4
5
6
<form method="post">
<input type="submit" name="foo" value="...">
</form>
<div id="answer">
  <?php require './handler.php'; ?>
</div>
handler.php
PHP
1
2
3
4
<?php if(isset($_POST['foo'])) {
//code here
}
?>
третий вариант, через аякс (на jquery)
HTML5
1
2
3
<form method="post">
<input type="button" name="foo" value="...">
</form>
JavaScript
1
2
3
4
5
6
7
8
9
<script>
$(function() {
  $('input[type="submit"]').click(function() {
    $.post('./handler.php', {'foo':'bar'}, function(ans) {
      $('#answer').html(ans)
    })
  })
})
</script>
handler.php
PHP
1
2
3
4
5
<?php
if(isset($_POST['foo'])) {
//code here
echo $result; // $result - нужные данные для вывода в див
}
1
1 / 1 / 0
Регистрация: 18.11.2011
Сообщений: 25
26.12.2012, 13:20
А если нужно сделать типа самообновления. Чтобы из загруженной внутрь дива страницы можно было этот сам див обновить ?
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
26.12.2012, 13:30
Цитата Сообщение от Мастак Посмотреть сообщение
Чтобы из загруженной внутрь дива страницы можно было этот сам див обновить ?
как вы себе представляете "загруженную внутрь дива страницу"?
--------

страница - это файл
файл может быть загружен только туда, где можно прописать адрес этого файла
например, в теги APPLET, EMBED, FRAME, IFRAME, IMG, INPUT type=image, SCRIPT XML - у них у всех есть атрибут SRC

а у тега DIV такого атрибута нет...
--------

так как вы себе представляете "загруженную внутрь дива страницу"?
0
1 / 1 / 0
Регистрация: 18.11.2011
Сообщений: 25
26.12.2012, 14:01
Через jQuery функцией load можно загрузить в div html страницу. Вот я знаю как сделать это чтобы нажав на кнопку она туда грузилась.
А как сделать чтобы она ,после загрузки её туда,сама себя грузить могла в этот же див,нажав на обновить внутри этого дива уже.Это как то надо чтобы яваскрипт добавил свой код в основную страницу чтобы внутренняя кнопка обновления могла обрабатываться.
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
26.12.2012, 14:39
Цитата Сообщение от Мастак Посмотреть сообщение
Через jQuery функцией load можно загрузить в div html страницу.
у вас имеется некая функция, например, под именем myFunc (), в результате работы которой от файла приходит строка символов, которая может собою представлять какой-то HTML-код

и вот эту строку символов (а не страницу) вы присваиваете свойству innerHTML вашего DIV'a

чтобы сделать кнопку обновления, вам надо вашу функцию myFunc () дополнить следующим:
-- динамически (методом createElement) создать кнопку <input type="button">,
-- "повесить" на эту кнопку вызов функции myFunc ()
-- добавить эту кнопку в DIV
0
1 / 1 / 0
Регистрация: 18.11.2011
Сообщений: 25
26.12.2012, 15:18
А если она внутри уже есть вместе с этой HTML строкой приходит.У неё ид уже есть.Надо просто как-то повесить обработчик на эту кнопку, чтобы основная страница смогла этот ИД увидеть.
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
26.12.2012, 15:28
если HTML-код кнопки уже имеется в строке символов, да ещё и с id, тогда вообще не понимаю - в чём у вас сложности?
из трёх пунктов, кои я выше указал ("создать, навесить, добавить") у вас два уже исполнены

после присвоения DIV.innerHTML = 'строка символов';
прописываете
document.getElementById ('id_кнопки').onclick = myFunc; // имя функции без скобок
0
1 / 1 / 0
Регистрация: 18.11.2011
Сообщений: 25
26.12.2012, 15:57
Не видит ид.
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function TChat(idElement,nameHtml){
 
             var reloadChat=document.getElementById(idElement);
             if (!reloadChat) return 0;
             reloadChat.onclick= function(){
                                 
                                 alert("сработала");
                                 $("#chat").load(nameHtml);
                                
                                 var chat1=document.getElementById ('chat')
                                 var but=chat1.getElementById ('registratePhp');
                                 if (!but) return 0;
                                 alert("Если сюда, дошёл значит елемент существует")
                                 }
             }
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
26.12.2012, 16:31
а это что у вас такое?
JavaScript
1
2
var chat1=document.getElementById ('chat')
var but=chat1.getElementById ('registratePhp');
метод getElementById () - от применим только к объекту document

никаких chat1.getElementById (), ХРЕН.getElementById () и прочего быть не должно

только и исключительно document.getElementById ()
0
1 / 1 / 0
Регистрация: 18.11.2011
Сообщений: 25
26.12.2012, 16:38
Так тоже пробовал.
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
26.12.2012, 16:55
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<script>
onload = reloadChat;
 
function reloadChat ()
{
// здесь у вас идёт запрос к серверу, который возвращает строку символов STR
// чтобы видеть изменения при обновлении, вставим в неё случайное число
 
var txt  = 'bla <b style="color: red">bla</b> bla<br>'
        +  Math.random ()
        +  '<br>wow <i style="color: blue">wow</i> wow'
        +  '<p><input type="button" value="Refresh" id="registratePhp">';
 
var STR = txt; // сервер вернул строку символов
 
document.getElementById ('chat1').innerHTML = STR;
 
document.getElementById ('registratePhp').onclick = reloadChat;
}
</script>
</head>
<body>
<div id="chat1"
     style="width: 400px; height: 200px; border: 1px solid red; text-align: center; padding: 30px"></div>
</body>
</html>
1
1 / 1 / 0
Регистрация: 18.11.2011
Сообщений: 25
26.12.2012, 18:04
Спасибо.Твой пример действительно работает. Я просто использовал библиотеку jQuery. Хотел на чистом JS писать, но пришлось в какой-то момент её подключить.Всё дело в том, что она по своему как-то обрабатывает полученные данные с сервера и поэтому если её кто-то использует ,то по возможности нужно её функциями пользоваться для обработки данных.

Решил так:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
reloadChat.onclick= function(){
                                 
                                 
                                 $.ajax({  
                                        url: nameHtml, // 
                                        cache: false,  
                                        success: function(html){  
                                        $("#chat").html(html);
                                        $("#registratePhp").click(function(){alert("Сработала кнопка регистрации");})
                                        }  
                                });
                                
                                 }
Материал читал тут :http://www.linkexchanger.su/2008/73.html

Отдельное спасибо kalabuni за активное участие.
0
0 / 0 / 1
Регистрация: 03.06.2013
Сообщений: 62
19.06.2013, 15:56
Цитата Сообщение от KOPOJI Посмотреть сообщение
HTML5
1
<div id="answer">
id="answer" id МОжет быть какой угодно ???
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.06.2013, 15:56
Помогаю со студенческими работами здесь

Вывод результата программы в окне
Подскажите пожалуйста, как выводить результат программы (то, что выводится в консоли) в окне. К примеру вот у меня простейший код,...

Вывод результата в новом окне
Привет. Есть код: case '5' document.location.href = 'QualityTable3.asp?Month=' &amp; cbomonth.Value &amp; '&amp;Day=' &amp; datx.value &amp;...

Вывод результата в новом окне в DataGridView
Приветстсвую,скажите какая должна быть строка если элемент находится в другом окне. this.radGridView2.DataSource = das.Tables; - это...

Вывод результата выполнения скрипта в модальном окне
суть в следующем: на сайте в шапке задуман адрес и ссылка на схему проезда. в яндексовском api-maps сгенерировал скрипт на вывод объекта...

Как по нажатию кнопки в открытом новом окне сделать рефреш в том окне откуда оно было открыто?
Открываю скриптом новое окно. Как по нажатию кнопки в открытом новом окне сделать рефреш в том окне откуда оно было открыто.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru