ФорумПрограммированиеПыхнуть хотите?F.A.Q. → MVC в JavaScript

MVC в JavaScript

  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 2:44, спустя 37 секунд


    var template = '<option value="[value]">[name]</option>', html ='';
    $(result.regions).each(function(){
       html  += template.replace(/(?:\[(.*?)\])/g, function(placeholder){
          return result.regions[placeholder.replace(/[^a-z]/g,"")];
       });
    });
    $('#region_id').append(html);


    както так
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 2:43, спустя 23 часа 58 минут 40 секунд

    CTAPbIu_MABP, Странное_Извращение
    adw/0
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 2:43, спустя 43 секунды

    adw0rd, MVC по твоему извращение? вторая регулярка правда не в тему
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 2:47, спустя 4 минуты 3 секунды

    CTAPbIu_MABP, какое тут нафиг MVC?
    Спустя 12 сек.
    зы. MVT рулит )
    adw/0
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 2:49, спустя 1 минуту 29 секунд

    ну для такого маленького примера это такое маленькое мвц - есть шаблон , данные и логика . это мвц
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 5:36, спустя 2 часа 47 минут 32 секунды


    var template = '<option value="[value]">[name]</option>', html ='';
    $(result.regions).each(function(i, val){
       html  += template.replace(/(\[(.*?)\])/g, function($0, $1, $2){
          return val[$2];
       });
    });
    $('#region_id').append(html);


    Спасибо Васяц и Адво
    Спустя 88 сек.
    давайте попиздим о MVC в javascript
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 5:37, спустя 39 секунд

    Давайте )
    adw/0
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 5:41, спустя 3 минуты 49 секунд


    var template = '<option value="[value]">[name]</option>', html ='';
    $(result.regions).each(function(i, val){
       var row = template;
       for(j in val)
       {
            row = row.replace("[" + j + "]",val[j]);
       }
       html  += row;
    });
    $('#region_id').append(html);


    я бы так сделал, если уж подходить к вмс шаблонизации.

    но должен естественно приходить массив "объектов" где ключи будут подходящие для замен.
    Сапожник без сапог
  • md5

    Сообщения: 11949 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 5:42, спустя 1 минуту 23 секунды

    разделите тему, пожалуйста
    Спустя 6 сек.
    господа
    все умрут, а я изумруд
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 5:45, спустя 2 минуты 40 секунд


    разделите тему, пожалуйста
    Спустя 6 сек.
    господа
    +1
    Спустя 68 сек.
    эта сука разделил тему)
    Сапожник без сапог
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 5:56, спустя 10 минут 32 секунды

    phpdude, все что у тебя делает цикл у меня делает модификатор G

    только ты заменешь по пришедшим данным а я по существующим плейсхолдерам
    помоему посрать что чем заменять

    а чтобы небыло '<option value="null">null</option>'
    можно поправить return val[$2] || "";
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 5:58, спустя 2 минуты 23 секунды

    CTAPbIu_MABP, насчет нулла да, это гут, но! если юать твой метод, то мне КАЖДЫЙ РАЗ НАДО ПИСАТЬ НОВУЮ РЕГУЛЯРКУ, а в моем методе, я просто на серверной стороне и в шаблоне меняю набор данных ;) имхо это лучше
    Сапожник без сапог
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 6:23, спустя 25 минут 32 секунды

    phpdude, сервер не должен знать как реализован шаблон, ему на это посрать он тока отдает данные (модель)

    и еще твой метод каждый цикл делает replace что не есть гуд если шаблон большой и если случайно на первом круге ты в моделе вернешь плейсхолдер то он заменится на втором а у меня нет


    var
    html ='',
    template = '<option value="[value]">[name]</option>',
    model = [{value:"[name]",name:"[value]"},{value:"name",name:"value"}]
    ;

    $(model).each(function(i, val){
    html += template.replace(/(\[(.*?)\])/g, function($0, $1, $2){
    return val[$2] || "";
    });
    });

    console.log(html);
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 26 ноября 2009 г. 6:32, спустя 8 минут 57 секунд

    бр %)

    сплю
    Сапожник без сапог
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 26 ноября 2009 г. 12:47, спустя 6 часов 14 минут 51 секунду

    если шаблонизатор - то типа такого
    http://beebole.com/pure/index.html

Пожалуйста, авторизуйтесь, чтобы написать комментарий!