Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 27.05.2016, 18:49
Аспирант
Отправить личное сообщение для PonyS Посмотреть профиль Найти все сообщения от PonyS
 
Регистрация: 19.04.2016
Сообщений: 55

Сообщение от laimas Посмотреть сообщение
Если клиент вносит изменения для элемента на странице, то эти изменения уже произошли, зачем серверу возвращать это назад? Ему нужно сохранить изменения и вернуть результат сохранения - успешно или же произошла ошибка.

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

Пример без базы, на сессии. Сохранить под любым именем и запустить. Изменить класс элемента. Нажать F5 (последующее открытие страницы).

<?
session_start();
if($_POST['choice']) {
    $_SESSION['class'] = $_POST['choice'];
    exit('Ok');
}
?>
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<style>
.red {
    color: #f00;
}
.green {
    color: #0f0;
}
</style> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script> 
$(function() {
    $('input').change(function() {
        $('p')[0].className = this.value;
        $.post(location, {choice : this.value}, function(d) {
            alert(d)
        }) 
    });
});
</script>     
</head> 
<body>
<p class="<?=$_SESSION['class'] ?: 'red'?>">Text</p>
<fieldset>
<legend>Изменение класса</legend>
<label><input type="radio" name="choice" value="red" <?=!$_SESSION['class'] || $_SESSION['class']=='red' ? 'checked' : null?> /> Красный</label>
<label><input type="radio" name="choice" value="green" <?=$_SESSION['class']=='green' ? 'checked' : null?> /> Зеленый</label>
</fieldset>
</body> 
</html>


То есть, при запросах страницы элемент будет иметь тот класс, который ранее был сохранен. Отсылать для этого элемент Р на сервер нет необходимости.

Другое дело, если речь идет, к примеру, о визуальном редакторе и html-код подготавливаемый в нем нужно предварительно просмотреть "в реальных условиях". Что вы меняете в DIV, зачем при этом его гонять туда сюда, я так и не понял.
Я уже реализовал, огромное спасибо!
Ответить с цитированием
  #12 (permalink)  
Старый 03.02.2020, 23:40
Новичок на форуме
Отправить личное сообщение для баламут Посмотреть профиль Найти все сообщения от баламут
 
Регистрация: 03.02.2020
Сообщений: 2

тут все такие профессоры ? - человек четко и явно попросил помощи
к примеру рассматриваем этот вопрос на примере игры .. строим корабль в космо стратегии .. списываются ресурс если не написать связку php=ajaх тупо жать до посинения ф5 и все ваши юзеры что бы постоянно видеть атаки противника , добычу реса прирост показтели списывания ресурсов за содержание зданий .. где не можете объяснить не умничайте .. тот кто начал тему и задал вопрос .. напиши в личку.. помогу решить вопрос.. тут походу люди далеки от обмен данными через аякс в реал тайм .. если просто как вы сказали ф5 тупо любой приличный более менее скрипт в инете можно надыбать.. но под конкретные задачи надо читать что такое аякс и обмен данных с сервером .. то что я наблюдаю по аяксу в данном плане в последнее время пишет школота дублируя друг друга не понимая сути вопроса .. даже что такое get запрос или post .. не говорю уже об универсальном методе отправки запроса
если делать сайт на аяксе то сорри тут нужно и динамическое обновление не только контента но и информации в реал-тайм .. в свое время я столкнулся с такой проблемой когда учился . тоже много умничали это отличие наших форумов от пиндосовских.. там быстрей ответ полчите учите англо и посещайте англо форумы быстрей научитесь .. у нас стараются набрав крохи знаний тупо отсылать в гугл.. хотя это тупо гугл хорошо работает только на англо языке по поиску в отличие от нашего яндекса где собрана помойка вот таких ответов
Ответить с цитированием
  #13 (permalink)  
Старый 03.02.2020, 23:51
Новичок на форуме
Отправить личное сообщение для баламут Посмотреть профиль Найти все сообщения от баламут
 
Регистрация: 03.02.2020
Сообщений: 2

https://yadi.sk/d/7Tnvb2S_3-cGJA на примере ролика ресурсы списываются при стройке без обновления страницы .. не так сложно это организовать особенно на простом сайте тут я помогаю такое делать клиенту на мунсе по игре обновление данных через аякс

а если такое не организовать то смысл загрузки через аякс теряется .. так как игрок должен видеть горячее обновление не нажимая ф5
а вам кто создал тему изучайте не только сторону ajax но и структуру php , tpl построение через

<form action="game.php?page=research" method="post" class="build_form"style="position: relative;top: -100px;">
<input type="hidden" name="cmd" value="insert">
<input type="hidden" name="tech" value="{$ID}">
<button type="submit" class="build_submit onlist">{$LNG.tech.{$ID}} </button>

</form> как вариант не будет работать.. а будет работать к примеру вот так
<a class="build_form" href="game.php?page=research#cmd=insert&tech={$ID} ">{$LNG.tech.{$ID}}</a> то есть через атрибут а изучите и это так как не которые запросы смотря как у вас организован скрипт работают только через ссылки атрибута <a href , или нужно писать свои правила в скрипте .. не забываем по сессиям есть один момент.. если есть конструктор.. а большинство новых движков, или старых уже на конструкторах сидят по обращению к базе данных.. то смысл писать сессии? они и так в нормальном движке уже есть по умолчанию.. нам лишь надо к обращению сделать связку

Последний раз редактировалось баламут, 04.02.2020 в 00:05.
Ответить с цитированием
  #14 (permalink)  
Старый 04.02.2020, 03:24
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от баламут
тут все такие профессоры ? - человек четко и явно попросил помощи
Очевидно, что не все такие! Просто laimas и может быть ещё кто-то до сих пор не познакомился с понятиями PWA и SPA. Я, например, одобрил для себя идею SPA ещё в 2007 году. (в виде «в зависимости от значения hash можно менять интерфейс»)

Сообщение от баламут
тут походу люди далеки от обмен данными через аякс в реал тайм
В играх для этого обычно используют сокет. Т. е. если говорить о HTML/JavaScript, то это класс WebSocket.

Сообщение от баламут
но под конкретные задачи надо читать что такое аякс и обмен данных с сервером .. то что я наблюдаю по аяксу в данном плане в последнее время пишет школота дублируя друг друга не понимая сути вопроса ..
Вы, судя по написанному, тоже не осилили этот вопрос! Есть «клиент», «сервер», «запрос», «ответ». А если вы ляпнете термин AJAX в неподходящем месте, то сразу почти всем понятно (не тем, кто знает только язык JavaScript или ещё хуже только jQuery вместо основ), что мы имеем дело с людьми, которые не могут отличить «модель клиент-сервер» от «языков JavaScript и XML»

Сообщение от баламут
у нас стараются набрав крохи знаний тупо отсылать в гугл..
У кого у нас? Если вы говорите, про людей в США, Великобритании и пр. где говорят на английском языке, то даже есть такой мем — just google it! Да! Just google it! Если вы говорите про жителей РФ и рядом, которые говорят на русском языке, то они могут вам предложить «погуглить». Здесь дело не в языке, а в образовании, в целях, которые хочет достичь человек. (У кого-то ведь Google заменяет мозги https://youtu.be/fU3S8_EEtFc?t=1742)

Для сравнения — Stack Overflow на русском и Stack Overflow [на английском]. Я не нашёл при беглом просмотре проблем описанных вами. Вы скорей по какой-то причине выдаёте желаемое за действительное!

Примеры Just google it!
https://youtu.be/-U4Hprs8QPs?t=1895
https://youtu.be/OZY55M7zwr0?t=364
https://youtu.be/yDYCf4ONh5M?t=994
https://youtu.be/op9I0wwrQpw?t=292

Сообщение от баламут
хотя это тупо гугл хорошо работает только на англо языке
Это ложь! Google достаточно хорошо ищет не только на английском языке.

Сообщение от баламут
отличие наших форумов от пиндосовских.. там быстрей ответ полчите учите англо и посещайте англо форумы быстрей научитесь
А вы сами уже изучили или только другим советуете? Например ваше «аякс» это на самом деле «эйджякс». (Если более точней при помощи IPA, то по русский вы говорите [ˈajəks] или [ɐˈjaks], однако по английский это слово произносится как [ˈeɪˈdʒæks]) Вот таблица для тех, кто думает, что правильно произносит некоторые слова связанные с веб-программированием — https://web-english.glitch.me/

ЕЩЁ Я упомянул про PWA и SPA, однако кто-то может вспомнить про SEO и отключенный JavaScript. Одно из решении — SSR

Последний раз редактировалось Malleys, 04.02.2020 в 03:50. Причина: Добавил ЕЩЁ
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AJAX обновление div в разных частях страницы kkolorid AJAX и COMET 9 19.12.2014 11:58
Вывод информации со страницы в ajax fAmOus Элементы интерфейса 4 17.07.2012 00:32
обновление iframe с помощью AJAX Aglenn AJAX и COMET 4 02.09.2011 22:48
Обновление информации ctpz jQuery 4 14.07.2011 23:28
Обновление информации Lvenok1987 Элементы интерфейса 14 05.02.2010 06:34