Comments 14
Может быть это последствия долгого использования jquery, но этот код
читается лучше этого
$('table tr:first').remove();
$('input#name').val('John');
$('#my_div').addClass('error').text('Случилась ошибка');
читается лучше этого
var объ =
{ 'table tr:first': 'remove'
, 'input#name': ['val', 'Иван']
, '#my_div':
[ ['addClass', 'error']
, ['text', 'Случилась ошибка']
]
}
$.executeObject(объ)
+8
Первое несомненно читается лучше второго, но если первое нужно передавать с сервера, и там вкрадывается ошибка, то простота чтения сразу теряет значение.
-3
А как происходит процесс отладки? Допустим, мне надо посмотреть $('a.link').length, или нужно какое-нибудь условие if?
+1
Простите, а зачем нужно js передавать с сервера?
+2
У вас есть аякс-запрос. Еслм он возвращает одно, вам надо
1) вывести данные в статус
2) раскрасить некое поле красным
3) запретить некий контрол
4) убрать строку из таблицы.
а если он возвращает другое, вам нужен другой набор действий, причём количество наборов может быть немалым. Всё это держать на клиенте немыслимо. Во всяком случае, мне удобные сценарии неизвестны.
1) вывести данные в статус
2) раскрасить некое поле красным
3) запретить некий контрол
4) убрать строку из таблицы.
а если он возвращает другое, вам нужен другой набор действий, причём количество наборов может быть немалым. Всё это держать на клиенте немыслимо. Во всяком случае, мне удобные сценарии неизвестны.
0
Событийно-ориентированное программирование, нет? Ну или так
А в success handler проверяете уже данные, и показываете нужные компоненты.
Еще можно организовать подписку на события.
$.ajax({
// some parameters
success: function(json) {
successHandler(json);
}
});
А в success handler проверяете уже данные, и показываете нужные компоненты.
Еще можно организовать подписку на события.
0
Аякс-запросы придуманы ТОЛЬКО чтобы получить порцию данных. А все скрипты можно загрузить и без аякса. Так же как и картинки и цсс.
0
Если у вас грузится только часть страницы, которую тоже надо обрабатывать как-то по-своему, то вы же не будете весь js загружать сразу, особенно если эта «часть страницы» никогда не будет затребована.
Т.е. дип линкинг аяксовый.
Т.е. дип линкинг аяксовый.
0
Идея интересная, но способствует к трансформации кода в треш и угар. Бэкенд не должен прямо влиять на фронтенд.
+8
А зачем вообще передавать JavaScript с сервера?! Зачем вообще серверу знать о tr:first, #mydiv и прочей разметки?
+5
Идея интересная, но соглашусь с выше сказанным зачем передавать js. Полезность данного плагина если уже проект(большой) и уже наколпачено не продумано, а так архитектура страдает имхо.
0
Sign up to leave a comment.
Расширение для jQuery: Execute Object