Показать цифровую клавиатуру IPAD в элементе Zend Form - PullRequest
0 голосов
/ 18 января 2012

В элементах html, если мы используем type = "number" для поля ввода, IPAD будет показывать цифровую клавиатуру по умолчанию для этого поля.

Но в Zend, когда я использую CreateElement ('number', 'zipcode');Это показывает ошибку.Есть ли другой способ показать цифровую клавиатуру на элементе zend при использовании IPAD.

1 Ответ

1 голос
/ 18 января 2012

Вы можете написать собственный элемент формы, например, My_Form_Element_Number, который расширяет Zend_Form_Element_Text и пользовательский помощник вида, например My_Viev_Helper_Number, чтобы отобразить его с правильными атрибутами.

ОБНОВЛЕНИЕ : пример (не полностью работает, просто чтобы дать представление)

// custom form element
class My_Form_Element_Number extends Zend_Form_Element_Xhtml
{
    /**
     * Use formIframe view helper 
     */
    public $helper = 'formNumber';
}

// custom view helper based on Zend_View_Helper_FormText
class My_View_Helper_FormNumber extends Zend_View_Helper_FormElement
{
    $xhtml = '<input type="number"'
            . ' name="' . $this->view->escape($name) . '"'
            . ' id="' . $this->view->escape($id) . '"'
            . ' value="' . $this->view->escape($value) . '"'
            . $disabled
            . $this->_htmlAttribs($attribs)
            . $endTag;

    return $xhtml;
}

// usage
$element = new My_Form_Element_Number('fieldname');
...