Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 04.04.2017, 13:01
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

т.е. на основной странице. так?
Ответить с цитированием
  #22 (permalink)  
Старый 04.04.2017, 13:04
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

А что есть основная страница?
Ну что за вопросы. Это описание операций для асинхронного запроса, где он подключается, там и должно быть описание. Просто поместите этот объект в тот же скрипт где и код самого запроса. А уже где вы его подключаете мне не ведомо.
Ответить с цитированием
  #23 (permalink)  
Старый 04.04.2017, 13:13
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

основная страница, в моем понимании выглядит примерно так:
<html>
<head>
	<script src="../jquery.js"></script>
	<script>
		function  AjaxLoad(){ //  универсальная функция, обеспечивающая загрузку
			….
		}
	</script>
</head>
<body>
	<div>......</div>
<body/>
</html>
Ответить с цитированием
  #24 (permalink)  
Старый 04.04.2017, 13:16
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

а подгружаемая форм выглядит примерно так:
<form>
	<input />
	…..
</form>
<script>
$(function(){
	// код обслуживающий эту форму
});
</script>
Ответить с цитированием
  #25 (permalink)  
Старый 04.04.2017, 13:19
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

<html>
<head>
    <script src="../jquery.js"></script>
    <script>
        //объект функций описывающий определяемые сервером задачи
        var define = {
            
        };

        function  AjaxLoad(){ //  универсальная функция, обеспечивающая загрузку
            ….
        }
    </script>
</head>
<body>
    <div>......</div>
<body/>
</html>


Какой смысл их подключать отдельным файлом. Хотя если скрипты объемные, то для удобства можно в режиме отладки иметь и отдельные подключаемые файлы, а вот на сервер помещать упакованные в один.
Ответить с цитированием
  #26 (permalink)  
Старый 04.04.2017, 13:21
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от winch
а подгружаемая форм выглядит примерно так
Как душе угодно, но если завтра потребуется установить фокус и у другой формы, что писать для нее свой обработчик загружаемый с формой?
Ответить с цитированием
  #27 (permalink)  
Старый 04.04.2017, 13:28
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

разных форм на сайте может быть дофига! форма логина, форма регистрации, форма оформления заявки..... и т.д и т.п.
логика работы у каждой формы практически всегда своя индивидуальная.
поэтому каждую форму лучше подгружать отдельно, когда она потребуется.
Ответить с цитированием
  #28 (permalink)  
Старый 04.04.2017, 13:32
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

Сообщение от laimas Посмотреть сообщение
Как душе угодно, но если завтра потребуется установить фокус и у другой формы, что писать для нее свой обработчик загружаемый с формой?
я всегда пишу для каждой формы свой индивидуальный обработчик.
общий у меня только аякс загрузчик.
Ответить с цитированием
  #29 (permalink)  
Старый 04.04.2017, 13:56
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

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

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

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

И такие различные задачи, которые будут востребованы, и должны быть определены. Они не являются частью индивидуальных обработчиков тех или иных форм, или прочих элементов. Это набор, операции, которые могут потребоваться при выполнении различных задач/обработчиков.

Например, обмен происходит в формате JSON. Если определить через свойства объекта, описываемого этим форматом, те или иные действия на клиенте, то сервер уже может определить эти задачи, опираясь на параметры запроса, результата его обработки и т.п:

{"add":{"#a":"data",".b":"data"}, - поместить данные в объект id=a и классом b
"msg":"data", - вывести сообщение
"opt":[1,2,3] - определить значения переменных
"exe":{"a":[...],...} - выполнить функции
}

и это одним ответом. А обработчику запроса, коли они "универсальный" нужно только проверить свойства и выполнить операции. Это же самое можно задавать и через атрибуты. Все зависит от того, насколько "широка" ваша универсальность и что ею предписано.

Последний раз редактировалось laimas, 04.04.2017 в 14:14.
Ответить с цитированием
  #30 (permalink)  
Старый 04.04.2017, 15:04
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

Сообщение от laimas Посмотреть сообщение
То, что ваш загрузчик принимает от сервера код форм и помещает их на страницу никоим образом не означает, что он универсален.
он ещё создает псевдо-окно позиционирует его и помещает туда полученный аяксом код.
пример его работы можно посмотреть здесь: http://rem-mastera.ru/DemandOrdersList
если нажать на: "войти на сайт", "откликнуться", "сделать заказ" то будут подгружаться различные формы.

Сообщение от laimas Посмотреть сообщение
А если наряду с загрузкой форм загружается и скрипт их обслуживающий, то какие тогда проблемы?
Проблема была в том что скрипт, загружающийся с формой не хотел ставить фокус на на поле логина. С этого вопроса я и начал этот топик.


я абсолютно согласен с тем, что любая универсальность имеет границы разумности, и самолету плуг не нужен

Для редиректа на другую страницу после отправки форм через ajax я тоже использую подобный механизм: сервер, после обработки формы отдает json объект, универсальный отправщик ajax-форм проверяет наличие в этом json поля redirect, если такое поле имеется, бараузер перенаправляется по указанному url.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Калькулятор с вариантом значений. dzho Общие вопросы Javascript 45 06.08.2017 03:54
Проверка строки ввода логина в форме assessor Events/DOM/Window 17 13.11.2012 12:52
Установка фокуса на элемент с сохранением скрола antonM jQuery 3 25.06.2012 15:25
Установка фокуса в конец формы Zhazhah jQuery 2 25.05.2011 18:20
Установка фокуса ввода на JavaScript VIt Общие вопросы Javascript 3 18.08.2008 15:48