Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 04.04.2017, 11:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

winch,
да, но после того как добавлена форма в конце success
Ответить с цитированием
  #12 (permalink)  
Старый 04.04.2017, 11:26
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

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

Сообщение от winch
поскольку ajax вызов у меня универсальный, для разных форм и диалоговых окон, а фокус мне надо только в форме логина ставить
А что мешает работать с атрибутами? Если есть например пользовательский атрибут focus, значит устанавливаем, или через атрибут data-post="операция". Речь то об универсальности, вот и описывайте "универсальное".
Ответить с цитированием
  #14 (permalink)  
Старый 04.04.2017, 11:36
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

Сообщение от ksa Посмотреть сообщение
Как вариант, не ставить фокус... После загрузки всей страницы смотреть у какого элемента он есть.
так пробовал - ни у кого нету фокуса.
Ответить с цитированием
  #15 (permalink)  
Старый 04.04.2017, 11:39
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

Сообщение от рони Посмотреть сообщение
winch,
да, но после того как добавлена форма в конце success
да понял конечно, что после добавления формы. но вот загвозка:
мне так неудобно, поскольку ajax вызов у меня универсальный, для разных форм и диалоговых окон, а фокус мне надо только в форме логина ставить.
Ответить с цитированием
  #16 (permalink)  
Старый 04.04.2017, 11:46
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

Сообщение от laimas Посмотреть сообщение
А что мешает работать с атрибутами? Если есть например пользовательский атрибут focus, значит устанавливаем, или через атрибут data-post="операция". Речь то об универсальности, вот и описывайте "универсальное".
мне казалось что самое универсальное решение - это когда каждая конкретная форма сама имеет js код, для своих прихотей.
если через атрибуты - то это шаблонный подход - он гибкости не дает, поскольку одной форме надо фокус ставить а другой может совсем другое что то делать.
Ответить с цитированием
  #17 (permalink)  
Старый 04.04.2017, 12:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от winch
мне так неудобно,
меняйте алгоритм ... проще добавить условие чем мудрить с неким сторожем, который будет ждать появления нужной формы и ставить фокус. добавили форму, добавили фокус, предусмотрите callback в вашем ajax... хотите трудностей ройте в сторону MutationObserver
Ответить с цитированием
  #18 (permalink)  
Старый 04.04.2017, 12:04
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Причем тут шаблоны и индивидуальные JS? Ну не с небес же сваливаются формы и прочее на страницах, что-то же их определяет, что?
Вы пишите об универсальном асинхронном запросе, а что в данном случае есть универсальность как не клиентский обработчик выполняющий различные определенные задачи?

var define = {
    a: function() {
        //установить фокус
    },
    b: function() {
        //раскрасить в горошек
    } 
}

success: function(data) {
    var d = $(data).appendTo(selector).find('[data-xxx]')
    //если есть определения задач, то цикл и их выполнение 
}


А уж серверу определить желаемое не сложно.
Ответить с цитированием
  #19 (permalink)  
Старый 04.04.2017, 12:52
Аспирант
Отправить личное сообщение для winch Посмотреть профиль Найти все сообщения от winch
 
Регистрация: 30.04.2015
Сообщений: 87

var define = {
    a: function() {
        //установить фокус
    },
    b: function() {
        //раскрасить в горошек
    }
}

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

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

Через атрибуты ведь можно задать не только операцию/операции, но и аргументы.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Калькулятор с вариантом значений. 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