zend框架输入元素的标题

时间:2011-08-21 06:16:48

标签: zend-framework zend-form zend-form-element

嗨,我正在尝试将title属性添加到以这种方式创建的输入元素

$this->createElement('text', 'tv_id', array(
        'label'      => 'Tv Id',
        'class'      => 'htmlfivify_number',
        'readonly'      => 'True',
        'required'      => False,
        'filters'    => array('Int'),
        'validators'    => array('Digits', 'Int')
));

我尝试在选项中添加'title' = "some title text',但它没有显示, 我想添加这个title属性,以便在用户鼠标悬停输入时显示为工具提示。

如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

$element = $this->createElement('text', 'tv_id', array(
    'label'      => 'Tv Id',
    'class'      => 'htmlfivify_number',
    'readonly'      => 'True',
    'required'      => False,
    'filters'    => array('Int'),
    'validators'    => array('Digits', 'Int')
));
$element->setAttrib('title', 'My title text');

应该得到你的头衔。

From the ZF manual

  

表单元素可能需要其他元数据。例如,对于XHTML表单元素,您可能希望指定类或id等属性。为方便起见,这是一组访问者:

     

setAttrib($ name,$ value):添加属性

     

setAttribs(array $ attribs):与addAttribs()类似,但覆盖

     

getAttrib($ name):检索单个属性值

     

getAttribs():将所有属性检索为键/值对

     

但是,大多数情况下,您只需将它们作为对象属性进行访问,因为Zend_Form_Element利用重载来方便访问它们:

// Equivalent to $element->setAttrib('class', 'text'):
$element->class = 'text;
<="" span="">
     

默认情况下,所有属性都会传递给元素在渲染过程中使用的视图助手,并呈现为元素标记的HTML属性。

所以你也可以$element->title = 'My title text'