嗨,我正在尝试将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属性,以便在用户鼠标悬停输入时显示为工具提示。
如何实现这一目标?
答案 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');
应该得到你的头衔。
表单元素可能需要其他元数据。例如,对于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'