Зміна шаблону виводу search

у шаблоні сайту викликається форма пошуку сайту.

Запитання: як змінити HTML виведення форми? Наприклад, мені потрібно в VALUE написати текст за умовчанням ("пошук по сайту"), і через javascript (onFocus) зробити, щоб воно очищалося в потрібний момент.

Коментарі

Текст можна змінити через Адмінка - Переклад інтерфейсу - Пошук рядків А для очищення треба перевизначати пошук, наскільки я знаю.

Що означає перевизначати пошук?

Я маю на увазі зробити поле введення з вже введеною в нього фразою "Пошук по сайту", і щоб при натисканні (за допомогою javascript) його value встановлювалася б рівним порожнім рядком.

Для цього мені потрібно безпосередньо редагувати HTML код цього модуля, де це можна зробити?

У файлі вашої теми mytheme/template.php: 'some JS. '); return drupal_render($form); > ?>

і зробіть там print_r($form), щоб подивитися структуру форми.

Спасибі за відповідь, пробував по-різному, не виводиться ні print_r, ні навіть echo 'test'; усередині функції. Атрибут і значення до форми не присвоюється.

Чому таке може бути?

Тому що ваша функція не викликається. Чому - інше питання. Яка версія друпала, як називається тема, що використовується, як називається функція, ну і чи включена форма пошуку :) ?

Угу, значить так: тема - .AD Blueprint New Версія Drupal - чесно кажучи не знаю, де дивитися. Судячи з написів біля тем 6.x-1.0, якщо можете підкажіть, будь ласка, де це можна подивитися і я напишу уточнену інформацію. Форму пошуку увімкнено. Назва функції - я чесно кажучи не дуже зрозумів, чи потрібно в назві mytheme замінювати на назву своєї теми, тому пробував і так і не перейменовуючи, результату - нуль :/ Можу поділиться доступом до адмінки.

приводжу для login, (за замовчуванням в едиті якийсь текст, або картинка як на цьому сайті, при наведенні курсором цей текст видаляється для введення користувачем свого тексту)

те саме і з пошуком.

створюєш файл forms.js

у page.tpl пишеш рядок:

сам файл forms.js виглядатиме так:

jQuery ( document ) .ready ( function ( )

var login = $ ( '#user-login-form input[type=text]#edit-name' ); var pass = $ ('#user-login-form input[type=password]#edit-pass');

login.val('Логін'); login.bind ( "focus" , function ( ) < if ( this.value== 'Логін' ) this.value= '' ; > ) ;

login.bind ( "blur" , function ( ) < if ( this.value== '' ) this.value= 'Логін' ; > ) ;

pass.val ( 'Пароль'); pass.bind ( "focus" , function ( ) < if ( this.value== 'Пароль' ) this.value= '' ; > ) ;

pass.bind ( "blur" , function ( ) < if ( this.value== '' ) this.value= 'Пароль' ; > ) ;

натомість: login = $('#user-login-form input[type=text]#edit-name');

у тебе буде для пошуку

search = $('#search-form input [type=text]#edit-keys');

тобто. вказуєш ід форми а потім вказуєш елемент, що цікавить на ній.