【问题标题】:How do you programatically create decimal fields in Drupal forms?您如何以编程方式在 Drupal 表单中创建十进制字段?
【发布时间】:2013-11-06 10:34:18
【问题描述】:

我只需要能够有一个文本字段并验证输入是否是十进制数,例如 100.00、0.1、10.6 等。

我正在使用 Drupal 7。

更新了问题以指示“程序化”解决方案(使用表单 API)。

【问题讨论】:

    标签: forms drupal drupal-7 form-api


    【解决方案1】:

    您可以为您的字段使用#element_validate 选项并编写您自己的验证函数。也许您可以在验证函数中使用 is_float() 或 is_number() 。 所以你的代码

    $form['yourField'] = array(
    ....
    '#element_validate'=>'myValidation'
    );
    ....
    function myValidation($element, &$form_state, $form){
      if (!is_float( $element['#value']) )){
        form_error($element, t('This field is not decimal.'));
      }
    }
    

    【讨论】:

      猜你喜欢
      • 2016-03-19
      • 1970-01-01
      • 2018-06-27
      • 1970-01-01
      • 1970-01-01
      • 2016-03-19
      • 2014-08-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多