powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Автоматический обработчик html форм на JS
25 сообщений из 353, страница 2 из 15
Автоматический обработчик html форм на JS
    #39338583
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПрограмёрПочти. Ссылаясь на личность автора, но не оскорбляя ))
да.
1. Я юмор люблю. 2. Мне лень. 3 До дна пирамиды не дохожу. Это неинтеллигентно.
...
Взял попкорн.
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338584
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторв случае проблемы с соединением по websocket откат на ajax - есть(как в sockjs например)?
я дал ссылку там всё описано.
откат для чего? если есть обрыв -там есть обработка обрыва, есть коды по которым можно понять причину обрыва.
автортебе вебсокеты нужны чтоб на сервере состояние держать?
вот тут полное не понимание.
есть несколько Основных отличий
при открытии ws создаётся канал связи.
сервер может быть инициатором сообщений .
после отправки сообщения нет необходимости отправлять ответ.
сообщения полностью асинхронны.
по ws можно пердвать как текстовые тик и бинарные данные.

всё остальное вытекает из этих возможностей.
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338591
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяоткат для чего?
невозможность установления соединения( прокси, антивирусы и т д)
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338592
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяавтор2. Аргумент против - неграмотно (потому как можно иначе)
Ответ на аргумент - нельзя это сделать иначе не засоряя глобальную область видимости

я б не стал так котегорично
автор3. Аргумент против - небезопасно (не Ваш, а urukhay)
Ответ на аргумент - учитывая выбранный инструмент вообще незначимо :)
eval вообще не рекомендуют, и я б не рекомендовал, лучше поискать другой вариант. но это моё мнение.

автор4. Заявление пока без аргументации - вместо ajax можно использовать websocket. Жду аргументацию для чего так делать, если эта тема всё ещё интересна.
по этой теме я могу много рассказать, поделиться опытом применения, описать достоинства и недостатки.
поэтому, для конкрктики, если интересно - задавайте вопросы
правда по серверной части в применении к серверу на java.
ссылку на информацию я дал.

"я б не стал так котегорично" - а я стал ))) Мне другой метод доступа к локальным переменным неизвестен. Если Вам известен - поделитесь

"eval вообще не рекомендуют" - не аргумент. Скажите конкретно почему его не рекомендуют и как это применимо к указанному случаю

"по этой теме я могу много рассказать" - я Вас слушаю ))) Какие плюсы Вы знаете, которые применимы к указанному случаю?
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338615
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилвадяоткат для чего?
невозможность установления соединения( прокси, антивирусы и т д)
одна проблема - старые прокси могут не пропускать ws (была такая инфа, но я не сталкивался) , обходится легко - делается соединение по wss.
для корпоративного применения - оно обязательно.
при невозможности установления соединения - есть обрабатываемая ошибка.

в применении к данному случаю - нет необходимости использовать форму.
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338621
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор Мне другой метод доступа к локальным переменным неизвестен. Если Вам известен - поделитесь

я ж показал
Код: javascript
1.
window[имя_объекта][имя_функции](данные)
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338673
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяавтор Мне другой метод доступа к локальным переменным неизвестен. Если Вам известен - поделитесь

я ж показал
Код: javascript
1.
window[имя_объекта][имя_функции](данные)


вадя!!! Вы знаете что такое "локальные переменные"?! Исправьтесь и напишите нормальный ответ на этот вопрос... Или проще, признайтесь что ошиблись.

А то начинаете фигню говорить.
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338694
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПрограмёрА то начинаете фигню говорить.
+1
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39338717
urukhay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторФорму в строку параметров переводит. Кстати... забыл упомянуть, что мой код файлы не отправляет. Но думаю Ваш тоже не отправляет, потому не страшно... Для файлов надо отдельную ветку кода пилить, или разные ajaxForm подключать

Еще как отправляет )) Я просто не стал его здесь приводить.
Опять же, идейно:

Код: javascript
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.
30.
function getFields( f )
{
    var form = {};
    f.find('.field').each(
        var field = $(this);

        // --- Получаем имя и тип поля			
        var fieldName = field.attr('name');				
        var fieldType = field.attr('type');

        // --- Если это изображение				
        if(fieldType == 'file')
        {
		for(var i = 0; i < field[0].files.length; i ++)
		{
			form.data.append(fieldName, field[0].files[i]);								
		}
	}
				
	// --- Поля других типов				
	else form.data.append(fieldName, field.val());
    );
}

Ну а дальше в описанной мною formSubmit в $.ajax передается form.data.
Все работает :)

				
				
				
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339157
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Програмёр,
так устроит?

Код: html
1.
<input type="button"  id="xxs" data-sss="ddd"/>



Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 $(document).on('click', '#xxs', function (e) {
       
                window[ this.id].cc = {
                    ddd: function () {
                        console.log('ooooooooooo');
                    }
                };

                var f = window[ this.id].cc[this.dataset.sss];

                setTimeout(f(), 2000);
            });


городить ajax не лень
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339162
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
городить ajax лень
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339206
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяПрограмёр,
так устроит?

Код: html
1.
<input type="button"  id="xxs" data-sss="ddd"/>



Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 $(document).on('click', '#xxs', function (e) {
       
                window[ this.id].cc = {
                    ddd: function () {
                        console.log('ooooooooooo');
                    }
                };

                var f = window[ this.id].cc[this.dataset.sss];

                setTimeout(f(), 2000);
            });


городить ajax лень

Уважаемый вадя, у нас так беседы не получится. "window[ this.id].cc = ..." вот это и есть захламления глобального объекта!!! Эт овы не локальную переменную создали, а глобальную!!!

Это значит что у меня в совсем левом модуле, отвечающим совсем за другое, тоже окажется что используется переменная window.xxs и что теперь делать? Лезть в систему и выискивать баг?!

Вадя, будьте добры, перед ведением беседы ознакомится с терминами, которые используются в сфере беседы... или хотя бы ознакомьтесь с ними тогда, когда о них кто-то сказал! А то нифига это общение не по пирамиде Грэма.

Это я Вам довод, а Вы мне ответ внепопад со словами "дак я уже ответил"!!! Поверьте, это очень злит, потому как является крайней мерой неуважения к собеседнику.

Жду ответа по вопросу. Если очередной ответ будет также невпопад, отвечать на него не буду и беседу будем считать законченой с пометкой "вадя не умеет дискутировать даже по инструкции"
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339223
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый Програмёр
автор "window[ this.id].cc = ..." вот это и есть захламления глобального объекта!!! Эт овы не локальную переменную создали, а глобальную!!!

я не создал глобальную переменную, я просто добавил свойство для элемента к которому привязан данный обработчик.
и есть польза можно назначать ссвойства , заключённые внутри объекта , но имеющие доступ снаружи.
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339242
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяУважаемый Програмёр
автор "window[ this.id].cc = ..." вот это и есть захламления глобального объекта!!! Эт овы не локальную переменную создали, а глобальную!!!

я не создал глобальную переменную, я просто добавил свойство для элемента к которому привязан данный обработчик.
и есть польза можно назначать ссвойства , заключённые внутри объекта , но имеющие доступ снаружи.
Хм, странное решение.
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339296
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяУважаемый Програмёр
автор "window[ this.id].cc = ..." вот это и есть захламления глобального объекта!!! Эт овы не локальную переменную создали, а глобальную!!!

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

А Вы знаете почему в модульных системах нельзя для элементов id давать, или если даёте, то составлять их так, что бы никто другой не догадался их так назвать (зачастую если айди - то некий хэш, с припиской имени самого элемента и с добавлением названием модуля и прочие извращения)?!

Потому что они должны быть уникальны... Представьте себе, на сайте 2 формы (вносятся разными модулями системы) и у обеих одинаковый id. Что будет?! - Правильно, нихрена хорошего не будет. Это нарушение спецификации, а потому реакцию браузера предугадать невозможно.

И ещё, если это массовое навешивание обработчика на формы, или если это вообще делегированный обработчик навешанный на боди, то как тогда предлагаете поступать (как его навешивать)?

А Вы знаете, что по спецификации HTML Вы не можете добавлять произвольные поля к элементам? Эта возможность официально была добавлена только в html5 и только для полей с префиксом "data-"? JQuery вроде до того как-то это эмулировать умела... Но опять же, всё завязывается на data (а вы просто с нарушением всех правил "cc" написали да ещё и на чистом js)

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


А ТЕПЕРЬ ГЛАВНОЕ: зачем мне так изгаляться стараясь не написать "eval", если в указанном контексте у него нет слабых или отрицательных сторон? Я то, что вы пишете в 5-6 строк с кучей запутываний, смог написать в одну строку где всё ясно и понятно: "запустить этот обработчик если указан, или дефолтный в ином случае"!
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339300
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

Всё просто. Если то, что я написал можно написать иначе - повторите функционал не используя eval :))
То есть зарегистрируйте универсальный обработчик для всех ajax форм, который будет инкапсулировать в себе callback функции, которые в свою очередь будут обработчиками ответа сервера (success, error)
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339314
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА Вы знаете почему в модульных системах нельзя для элементов id давать, или если даёте, то составлять их так, что бы никто другой не догадался их так назвать (зачастую если айди - то некий хэш, с припиской имени самого элемента и с добавлением названием модуля и прочие извращения)?!

а ты знаешь, что самый оптимальный поиск по дереву именно по id....

авторПотому что они должны быть уникальны... Представьте себе, на сайте 2 формы (вносятся разными модулями системы) и у обеих одинаковый id. Что будет?! - Правильно, нихрена хорошего не будет. Это нарушение спецификации, а потому реакцию браузера предугадать невозможно.

а ты знаешь что имена перменных/муодулей должны быть уникальны?

авторИ ещё, если это массовое навешивание обработчика на формы, или если это вообще делегированный обработчик навешанный на боди, то как тогда предлагаете поступать (как его навешивать)?
ручками
авторА Вы знаете, что по спецификации HTML Вы не можете добавлять произвольные поля к элементам? Эта возможность официально была добавлена только в html5 и только для полей с префиксом "data-"? JQuery вроде до того как-то это эмулировать умела... Но опять же, всё завязывается на data (а вы просто с нарушением всех правил "cc" написали да ещё и на чистом js)
а ты знаешь, что ты путаешь понятия?
а ты знаешь что такое .data в jquery?
а ты знаешь что такое обращение является правильным
localStorage.xxx=7
свойства через точку это нормально.


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

тож самое можно сказать и про использование eval.
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339360
Програмёр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

Вы еврей? ) Я Вам вопросы задавал для того, что бы ответы услышать, а не получить в ответ список вопросов, некоторые из которых темы не касаются (вроде уникальности имён модулей... вы наверное никогда не видели сложных систем, которые делятся на модули, а те делятся на подмодули, а те состоят из компонентов... о какой уникальности имени речь я вообще не понимаю)
Ладно. Беседу пора закрывать. Я понял, Вы будете упираться даже когда понимаете что неправы. Троллинг это или Ваши убеждения мне не понять, но совершать подвиг skyANA с разъяснением Вам Ваших ошибок на 14-ти страницах я не готов :))

Оставайтесь при своём мнении... Вы очень умный человек и нефиг нам с Вами спорить и что либо рассказывать. Удачи Вам ;)
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339367
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339374
MSSQLAndDotNet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяПрограмёр,
за использование eval - я б голову сворачивал,
1 это медленно, 2 безграмотно.
3 от ajax стоит отказываться , есть прекрасная замена websocket
трафик жрет
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339381
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MSSQLAndDotNetвадяПрограмёр,
за использование eval - я б голову сворачивал,
1 это медленно, 2 безграмотно.
3 от ajax стоит отказываться , есть прекрасная замена websocket
трафик жрет
кто ?
websocket????
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339391
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяMSSQLAndDotNetпропущено...

трафик жрет
кто ?
websocket????
Это же Лёшык, он с ПТ
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339544
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAвадяУважаемый Програмёр
пропущено...

я не создал глобальную переменную, я просто добавил свойство для элемента к которому привязан данный обработчик.
и есть польза можно назначать ссвойства , заключённые внутри объекта , но имеющие доступ снаружи.
Хм, странное решение.
А почему странное?

Дак давайте рассмотрим ситуацию, когда кнопка - это кнопка Edit, при нажатии на которую с сервера подгружаются некие данные для редактирования и отображается "окно" для их редактирования.
Кнопка Edit при этом пропадает.

То есть типичная ситуация, когда полученную модель ну никак нельзя связать со свойствами DOM элемента.
Ну и вообще мешать модель и с элементами представления - это же моветон :)
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339640
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторДак давайте рассмотрим ситуацию, когда кнопка - это кнопка Edit, при нажатии на которую с сервера подгружаются некие данные для редактирования и отображается "окно" для их редактирования.
Кнопка Edit при этом пропадает.

То есть типичная ситуация, когда полученную модель ну никак нельзя связать со свойствами DOM элемента.
Ну и вообще мешать модель и с элементами представления - это же моветон :)
странный подход...
продолжу твою конструкцию
есть кнопка Edit - нажали - загрузилось- кнопка Edit стала : невидимой/неактивной ( на выбор) - начали редактировать - появилась кнопка Save - отредактировали - нажали Save - сохранилось - кнопка Save стала : невидимой/неактивной ( на выбор)- кнопка Edit стала видимой, активной
всё готово для следующего действа.
что здесь странного? защита от случайного нажатия , когда много введено. вариантов много такой защиты- кому какой нравится
...
Рейтинг: 0 / 0
Автоматический обработчик html форм на JS
    #39339668
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
доказательства оппонента иногда лежат в другой плоскости - Архитектура
Ты как раз на эти вопросы и не отвечаешь:
skyANAНу и вообще мешать модель и с элементами представления - это же моветон :)
Трудно доказать кодировщику 1-го класса что такое Модель и т.д.
...
Рейтинг: 0 / 0
25 сообщений из 353, страница 2 из 15
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Автоматический обработчик html форм на JS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]