Вход

Просмотр полной версии : tt_news + AJAX


Prost
19.01.2007, 18:42
Иммется сайт с использованием AJAX.
Первоначально на странице новостей используется LIST. Затем по соответствующей ссылке открывается SINGLE.
Подскажте, пожалуйста, как в шаблоне tt_news для LIST заменить стандартную ссылку вида
<a href=index.php?id=id_страницы&tx_ttnews[tt_news]=id_новости&tx_ttnews[backPid]=id_страницы</a>
на
<a href="#" onClick=функция('index.php?id=id_страницы&tx_ttnews[tt_news]=id_новости','постоянный_параметр')>Title_ссылки</a>
Или может быть какое-то другое решение? Заранее извиняюсь, если вопрос банален, т.к. опыт работы с TS и, tt_news в частности, у меня небольшой.

Pavel Antonov
19.01.2007, 19:38
Иммется сайт с использованием AJAX.
Первоначально на странице новостей используется LIST. Затем по соответствующей ссылке открывается SINGLE.
Подскажте, пожалуйста, как в шаблоне tt_news для LIST заменить стандартную ссылку вида
<a href=index.php?id=id_страницы&tx_ttnews[tt_news]=id_новости&tx_ttnews[backPid]=id_страницы</a>
на
<a href="#" onClick=функция('index.php?id=id_страницы&tx_ttnews[tt_news]=id_новости','постоянный_параметр')>Title_ссылки</a>
Или может быть какое-то другое решение? Заранее извиняюсь, если вопрос банален, т.к. опыт работы с TS и, tt_news в частности, у меня небольшой.

К сожалению, вид ссылки tt_news изменять не дает.
Можно сделать следубщее:

Изменить код tt_news добавив куда-нибудь в конфиграцию ссылок returnLast=url (ссылки генеряться методом typolink). Тогда будет возвращатся URL, а не <a /> и можно будет по своему усмотрению формировать код.
Во внешнем stdWrap поймать и модифицировать тэг ссылки через методы парсинга HTML.
Коль уж у Вас AJAX и опыт с TYPO3 не большой, то можно HTML поменять на лету в JavaScript (я подазреваю, что сейчас вы просто кладете все что получено от сервера в innerHTML без разбора?)

Prost
19.01.2007, 20:10
Изменить код tt_news добавив куда-нибудь в конфиграцию ссылок returnLast=url (ссылки генеряться методом typolink). Тогда будет возвращатся URL, а не <a /> и можно будет по своему усмотрению формировать код.
Изменить код tt_news не получится, т.к. это расширение используется другими сайтами.


Во внешнем stdWrap поймать и модифицировать тэг ссылки через методы парсинга HTML.

Можно, пожалуйста, про этот вариант поподробнее.

Заранее благодарен.

Pavel Antonov
19.01.2007, 20:42
Можно, пожалуйста, про этот вариант поподробнее.

Заранее благодарен.

stdWrap можно найти как внутри настроек tt_news, так и просто навесить свой, целиком на plugins.tt_news.

С помощью stdWrap можно модифицировать отдельные тэги - функция parseFunc. В ней есть замена тэгов. Код должен выглядет примерно так:

stdWrap.parseFunc {
tags {
a = COA
a {
10 = TEXT
10.data = parametes : href
10.wrap = <a href="#" onClick="|">

20 = TEXT
20.current = 1
20.wrap = |</a>
}
}
То есть во всех тэгах <a> href перебрасывается в onClick.

P.S.: Не проверял. Если не заработает, то копать нужно в этом направлении, IMHO.