обычно отменяют предыдущую кнопку (unset) а потом вместо нее тулят кнопку-картинку с таким же уровнем вложенности в массиве. в webform все работает так, как и в formapi. найдите пример и сделайте как надо.
да, действительно работает, но почему-то только в модуле, в template.php работать отказывается, хотя некоторые подобные хуки у меня на семёрке запускаются.
Комментарии
темизировать
http://drupal.org/node/1157306
http://drupal.org/node/972690
короче, искайте и найдете
спасибо, но там всё не то
все там то , а если добавить http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.... ,
то можно сделать то что вам надо
спасибо, но не могу понять как же обратиться к кнопке? к простому полю получается, например
<?php
function du_preprocess_webform_form(&$vars) {
$vars['form']['submitted']['button']['#prefix'] = 'цццц';
$vars['form']['submitted']['button']['#suffix'] = 'цццц';
}
?>
а к кнопке не пойму как. Получается только продублировать )))
что-то типа
<?php
function du_preprocess_webform_form(&$vars) {
$vars['form']['submit']['#type'] = 'image_button';
$vars['form']['submit']['#name'] = 'oooop';
$vars['form']['submit']['#src'] = path_to_theme() .'/yes.png';
}
?>
))) вот так получилось
<?phpfunction du_preprocess_webform_form(&$vars) {
$vars['form']['#type'] = 'image_button';
$vars['form']['#name'] = 'oooop';
$vars['form']['#src'] = path_to_theme() .'/yes.png';
}?>
но при этом исчезли все поля hidden, которые были
<?php
<input type="hidden" name="submitted[button]" id="edit-submitted-button" value="" />
<input type="image" name="oooop" id="" class="form-submit" src="/drdu/sites/all/modules/webform/yes.png" />
<input type="hidden" name="details[sid]" id="edit-details-sid" value="" />
<input type="hidden" name="details[page_num]" id="edit-details-page-num" value="1" />
<input type="hidden" name="details[page_count]" id="edit-details-page-count" value="1" />
<input type="hidden" name="details[finished]" id="edit-details-finished" value="0" />
<input type="hidden" name="form_build_id" id="form-fc710d5a4013e8e99e22e561ae84c464" value="form-fc710d5a4013e8e99e22e561ae84c464" />
<input type="hidden" name="form_token" id="edit-webform-client-form-1-form-token" value="dcfbc502b2f7bab542a83db986b0db36" />
<input type="hidden" name="form_id" id="edit-webform-client-form-1" value="webform_client_form_1" />
<div id="edit-actions" class="form-actions form-wrapper"><input type="submit" name="op" id="edit-submit" value="Отправить" class="form-submit" />
?>
остались только поле формы, которое создавал сам и собственно кнопка-изображение.
теперь форма не отправляется! как же отредактировать кнопку?
обычно отменяют предыдущую кнопку (unset) а потом вместо нее тулят кнопку-картинку с таким же уровнем вложенности в массиве. в webform все работает так, как и в formapi. найдите пример и сделайте как надо.
PS и используйте devel при этом. полезная штука
Спасибо, получилось вот так:
<?php
function du_preprocess_webform_form(&$vars) {
unset($vars['form']['actions']['submit']);
$vars['form']['submit']['#type'] = 'image_button';
$vars['form']['submit']['#src'] = path_to_theme() . '/yes.png';
$vars['form']['submit']['#name'] = 'op';
}
?>
Опять столкнулся с похожей проблемой, и мой вариант выше не подходит, так как он темизирует абсолютно все формы, а как темизировать конкретную?
через CSS указать фоном легче чем все остальные танцы
и всё таки в танцах надо разобраться!
Проверку на условие с ID
да, действительно работает, но почему-то только в модуле, в template.php работать отказывается, хотя некоторые подобные хуки у меня на семёрке запускаются.
Спасибо, а случаем по этой темке не подскажете http://www.drupal.ru/node/79152 ?