2010-11-23 45 views
1

对于在Drupal中使用的主题搜索框,文本字段如下:Drupal搜索主题表单 - 更改输入类型?

<input type="text" class="form-text" id="edit-search-theme-form-1"> 

正如我开发移动网站,我想改变文本字段的输入类型进行搜索。

有人会知道如何去做这个改变?

谢谢,马克。

回答

0

你将不得不做HTML5,它实际上有一个输入类型“搜索”,但我不知道移动浏览器当前的HTML5兼容性状态是什么。您可以尝试使用主题更改输入类型。

0

这是不可能的标准方式。 Drupal的形式API控制的列表,请访问:http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html/6

文本字段用于呈现<输入类型=“文本”

也许在page.tpl.php中文件在下面的技巧你主题会得到你所需要的:在你的page.tpl.php中下面的代码行后

,立即

<?php if ($search_box): ?>

加,

<?php $search_box = preg_replace ("/<input type=\"text\"/", "<input type=\"search\"", $search_box); ?>

它为我工作。尝试。 :-)

0

还有一个很好的解决这个问题,在D6和D7效果很好:

/** 
* Changes the search form to use the "search" input element of HTML5. 
*/ 
function tao_preprocess_search_block_form(&$vars) { 
    $vars['search_form'] = str_replace('type="text"', 'type="search"', $vars['search_form']); 
} 

这段代码进入你的主题的template.php文件中。在我的情况下,它是tao,这就是为什么函数以“tao_”开头的原因。您必须将其重命名为与您的主题名称相匹配。

+0

确实可以为您工作吗?我将它添加到template.php文件中,将tao添加到我的主题名称中,但未改变输入类型 – 2011-03-16 13:51:16

0

确保您在template.php中添加任何新的预处理函数后清除主题缓存