9

の個々のオプションを無効にすることは可能Zend_Form_Element_Radioですか? disabled="disabled"つまり、特定の入力タグに追加したいと考えています。

Zend Framework にはこの機能が含まれていますか? または、これを達成する別の方法はありますか?

4

2 に答える 2

21

はい、可能です:

$element->setMultiOptions(array (
 'songs' => 'songs',
 'lyrics' => 'lyrics',
 'artists' => 'artists'
));
$element->setAttrib('disable', array('lyrics', 'songs'));
于 2010-03-04T01:35:47.303 に答える
0

オプションキーで最適に機能します。現在アクティブなオプションを除くすべてのオプションを無効にする関数を次に示します。

/**
 * This function disables all options of the given selectElement, except for the active one
 * @param \Zend_Form_Element_Select $selectElement
 * @throws \Zend_Form_Exception
 */
private function disableAllOtherOptions(\Zend_Form_Element_Select $selectElement)
{
    $theOneAndOnlyActiveValue = $selectElement->getValue();
    $optionsToDisable = [];
    foreach ($selectElement->options as $key => $option) {
        if ($key <> $theOneAndOnlyActiveValue) {
            $optionsToDisable[] = $key;
        }
    }
    $selectElement->setAttrib('disable', $optionsToDisable);
}
于 2016-03-24T15:47:13.033 に答える