3

我想知道如何禁用表单复选框元素标签上的转义?

我想要我的标签 html,这是我当前的代码:

    $score = new \Zend\Form\Element\MultiCheckbox('score');
    $score->setLabel('Score');
    $score->setOptions(array('value_options' => array(1 => '<b>Test 1</b>', 2 => '<b>Test 2</b>')));
    $score->setAttributes(array('escape' => false));
    $this->add($score);
4

2 回答 2

8
 $score->setLabelOptions(array('disable_html_escape' => true));
于 2014-08-08T11:28:59.090 回答
3

您没有办法使 HTML 转义符短路。Multicheckbox 视图助手上的代码不允许有条件的转义。您需要创建自己的视图助手以呈现 HTML。

但是,如果您只想将标签设置为粗体,则可以使用 CSS 来完成。'value_options' 选项可以是数组数组,其中第二级包含 Multicheckbox 中每个单独输入的选项。例如:

'value_coptions' => array(
  'test_1' => array(
      'value' => '1',
      'label' => 'Test 1',
      'label_attributes' => array( 'style' => 'font-weight: bold' ),
      'selected' => true,
  ),
),
于 2013-08-11T18:23:10.903 回答