ЙажаСценарий / Говнокод #6389 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
<table>
     <form method="post" action="/ololo/onatole.html?step={{if $step eq '2'}}3{{else}}6{{/if}}">
     <tr><td><a id="submit">...
....

фаерфокс отлично парсит такие формы внутри таблиц, jQuery(this).closest('form') тоже возвращает все превосходно

Запостил: govno govno, (Updated )

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

  • Ну и? Как раз ограничение на расположение form само по себе редкое говно.
    Ответить
  • я извиняюсь, но не говно, т.к. иногда именно так и приходится делать, т.е. пихать формы в таблицу меж строчек, по форме на строчку, и потому что:
    1. должна быть правильная вложенность
    2. формы нельзя вкладывать друг в друга

    Например, список в виде таблицы в формате
    (надпись) [кнопка] [кнопка]
    причем надпись и кнопки выравниваются столбцами таблицы.


    Единственный выход здесь - вообще не использовать таблицы для верстки.
    Ответить
    • ах, да, едет уеб-дизайнер в поезде, а колеса стучат <td></td><td></td>
      говно же, форма в таблице

      но самая срань там, где фигурные скобки
      Ответить
          • т.к. PHP является говном; смарти, сделанное на PHP, неизбежно является метаговном
            Ответить
            • нет. в фигурных скобках плохо то, что они не являются уголками. Я видел лучшую жизнь, например, шаблонизатор tapestry5. Там вот почти нет фигурных скобок, а управляющие конструкции описываются xml (html) тегами.
              Ответить
              • У нас в джанге тоже фигурные скобки. Вот уж точно не жалуюсь.
                Я видел худшую жизнь с HTML::Template, c <tmpl_var varname> и то не круто
                Ответить
                • HTML::Template немного лучше, чем смарти, но тоже еще не совсем то.
                  плиз, зацените, как все приятно в тапестри:
                  (простенький шаблон компонента вывода флажков)
                  <div id="locales" xmlns="http://www.w3.org/1999/xhtml"
                  	xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd" xmlns:p="tapestry:parameter">
                  	<span t:type="Loop" t:source="locales" t:value="locale">
                  		<a href="#" t:type="ActionLink" t:context="locale">
                  			<img alt="${localeText}" src="${localeFlag}" />
                  		</a>
                  	</span>
                  </div>
                  вот такой шаблон вполне можно отдать верстуну, не особо опасаясь, что он не поймет или испортит функциональность. Да и в визуалке мы увидим спан с изображением-линком
                  Ответить
                  • Ну, так как я абсолютно не имею понятия, что такое тапестри, я совсем не понял, что значат все эти атрибуты.
                    t:type="Loop" значит цикл будет из этих спанов?
                    Ответить
                    • > что такое тапестри
                      это java фреймворк, http://tapestry.apache.org/
                      атрибуты в неймспейсе означают, что их тапестри выводит как есть, только с префиксом t: имеют значение
                      т.е.:
                      1. div id="locales" так и останется
                      2. xmlns информационные
                      3. t:type="Loop": тапестри заменит span на последовательность из элементов что внутри спана, примерно как FOR EACH locale IN locales
                      4. для каждой итерации будет сгенерена ссылка ActionLink на код, причем вместо a href="#" мы можем писать что нам нравится
                      5. в теге img значения атрибутов alt и src будут выставлены для каждой итерации результатами работы соотв. методов
                      Ответить
                      • 3. По-моему, форыч куда понятней )
                        4. Совсем не понял 🙂 Уже ж написали <a href=, что ещё ставить?
                        Ответить
                        • 3. ну так это и есть форыч, только записан по правилам xml 🙂
                          4. а вот в том и фишка, что можно тоже написать хоть <span, хоть <div - все равно будет сгенерен <a href=.
                          Вот в этом прелесть Тапестри, что t:type определяет компонент Тапестри (стандартный или пользовательский), который уже решает, как рендерить данный тег. А шаблон мы можем писать так, как нам удобнее.
                          В случае с линками, конечно, нагляднее ставить <a href=

                          И кстати вместо <span t:type="Loop" можно написать даже просто <t:loop 🙂
                          Ответить
                          • Вообщем, как-нибудь на досуге попробую осилить этот четвёртый пункт, а то пока мне это кажется какой-то чушью, но так же всегда бывает, когда чего-то не понимаешь сразу.
                            Ответить
                            • советую вообще посмотреть в сторону фреймворка, приятнее штуки я еще не видел, хотя, конечно, идеи там применены нестандартные. Зато быстро въезжаешь, и очень быстро потом разрабатываешь. имхо, никакой jsf или wicket рядом не валялся
                              Ответить
                              • Вот, чего-то мне тут на ночь глядя кажется, что лучше чем php - шаблонизатора не взвидеть...
                                А логика - это на чём-нибудь другом пускай пишется...
                                Ответить
    • т.е. вкладывать именно так: <table><form></form><tr><td></td><tr>...
      а не так: <table><tr><td><form></form></td><tr>...
      ?
      Ответить
          • видимо, заменить таблицы на дивы и приаттачить ксс для красоты.
            бтв Недале как вчера закончил модуль, сверстав шаблоны таблицами именно вот так, и отдал верстуну для наведения красоты
            Ответить
        • но почему не <td><form></form></td> ??
          именно в td же "полезное" пространство
          Ответить
  • Область видимости? Не, не слышал
    |onatole
    ОНОТОЛЕ негодует и накажет автора за неправильное написание его имени!
    Ответить

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

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8