HelperForm PrestaShop中的输入类型编号

时间:2017-02-15 11:59:55

标签: override prestashop prestashop-1.7

我无法在HelperForm PrestaShop中设置输入类型编号。 只有文本和密码类型正常工作。设置为数字类型时,输入框将消失。

$fields_form[0]['form'] = array(
    'legend' => array(
            'title' => $this->l('Settings'),
    ),
    'input' => array(
        array(
            'type' => 'number',
            'label' => $this->l('Number Input'),
            'name' => 'NumberInput',
            'required' => true
        )
    ),
    'submit' => array(
        'title' => $this->l('Save'),
        'class' => 'btn btn-default pull-right'
    )
);

2 个答案:

答案 0 :(得分:5)

您可以按如下方式设置类型:

$fields_form[0]['form'] = array(
    'legend' => array(
            'title' => $this->l('Settings'),
    ),
    'input' => array(
        array(
            'type' => 'html',
            'label' => $this->l('Number Input'),
            'name' => 'NumberInput',
            'required' => true,
            'html_content' => '<input type="number" name="NumberInput">'
        )
    ),
    'submit' => array(
        'title' => $this->l('Save'),
        'class' => 'btn btn-default pull-right'
    )
);

您可以在输入中使用例如min="1" max="5"

根据admin主题中的form.tpl,这应该可行。

答案 1 :(得分:2)

PrestaShop助手表单中没有number类型,这是将类型设置为number时输入框消失的唯一原因。

您可以做的是创建一个简单的输入字段并添加帮助文本或工具提示以指示此字段仅接受数字值。以下代码可用于向HelperForm添加帮助文本或工具提示。

array(
                    'type' => 'text',
                    'label' => 'Custom Label',
                    'required' => true,
                    'hint' => 'Custom Tool Tip',
                    'desc' => 'Custom Help Text'
)

在验证部分,您可以使用仅对数字进行验证,如果输入的值不符合预期,则返回错误。