1. JavaScript / Говнокод #8384

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $.ajax({
           url: host + "json/" + action + "/?event-name=" + 
                   $("#event-name").val() +  
                   "&event-date-from=" + $("#event-date-from").val() + 
                   "&event-date-to=" + $("#event-date-to").val() + 
                   "&event-place-id=" + $("#event-place-id").val() +
                   "&event-id=" + $("#event-id").val() +
                   "&event-pls=" + $("#query").val(),

    Вот, что осталось в наследство от предшественника... И так во всем проекте FUUUUU~~~~~~

    Запостил: unkwua, 01 Ноября 2011

    Комментарии (9) RSS

    • бабуин и банан жкуери
      Ответить
    • поясните в чем говнокод, пожалуйста
      Ответить
      • 1. Передавать данные формы таким образом это бред
        2. Во-вторых url строка не заэскейпится
        3. Отсутствует наглядность
        Ответить
    • Сгласен не красиво + при добавлении нового поля в форму придется переделывать код. Я делаю примерно так:

      var _sRandom = Math.random();
      var aPostValues = {};
      var oForm = jQuery('#' + sFormId);

      jQuery.each( oForm.find(':input'), function () {
      //collect post values
      if (this.name.length) {
      aPostValues[this.name] = jQuery(this).val();
      }
      });

      //send data
      jQuery.post(this._sPageReceiver + 'getPopupWindow/' + sType + '&_random=' + _sRandom
      , aPostValues, function(sData){

      oForm.replaceWith(sData);
      });
      Ответить
      • в jQuery есть метод serialize():
        var data = $('#myform').serialize();
        $.post('url', data, function(res){
        // callback
        });
        p.s. в твоем примере переменную random можно не передавать, запрос при передаче методом post и так не кешируется (спецификация http)
        Ответить
      • Отлично не знал о таком методе, спасибо возьмем на вооружение!
        Ответить

    Добавить комментарий