0

我正在尝试在Drupal 7中构建一个表单,其中一个字段需要有一个输入掩码。我发现插件屏蔽输入看起来就像我正在搜索的内容。只有没有关于如何实现它的文档(我读过有关货币和这个插件的信息,但这里只是关于让它工作)。

我是 Drupal 的新手,但在论坛上搜索我想出了以下代码:

function report_expenses_form($form, &$form_submit) {
  libraries_get_path('maskedinput') . '/misc/ui/jquery.maskedinput-1.3.js';
...
     $form['cash_advance']['amount'] = array(
        '#title' => t('Cash Advance : '),
        '#type' => 'textfield',
        '#default_value' => t('$ 00,00'),
        '#required' => TRUE,
        '#mask' => '$?999.999.999,99',
      );
....

我在 Drupal 中安装了“库”和“屏蔽输入”插件并刷新了我的缓存。

我下载了jquery.maskedinput-1.3.js并将其放入我的 {DRUPAL_HOME}/misc/ui/

有任何想法吗?

先感谢您

4

4 回答 4

2

这有点令人困惑。这是您需要做的:

  1. 从这里下载文件
  2. 在您的站点/所有/库文件夹中,创建一个名为“masked_input”的文件夹
  3. 将文件上传到您的 sites/all/libraries/masked_input 文件夹
  4. 将文件重命名为 jquery.maskedinput-1.3.js 或 jquery.maskedinput-1.3.min.js,以便文件的最终路径是 {DRUPAL HOME}/sites/all/libraries/masked_input/jquery.maskedinput-1.3。 js 或 {DRUPAL HOME}/sites/all/libraries/masked_input/jquery.maskedinput-1.3.min.js
  5. 现在您可以启用该模块。
  6. 利润!

注意:这是一种临时解决方法,不需要您修补模块或更改任何代码。需要修复模块以解决此处记录的这些问题

注意 2:安装后,您可能需要将 {DRUPAL HOME}/sites/all/libraries/masked_input 重命名为 {DRUPAL HOME}/sites/all/libraries/maskedinput 以使其加载和工作。

于 2013-02-19T16:46:28.127 回答
0

肖恩的方法只对我使用旧版本 1.3.1 的屏蔽输入有效,两周后几乎放弃了:

https://github.com/digitalBush/jquery.maskedinput/releases

下载包,解压,然后:

cp jquery.maskedinput-1.3.1/dist/jquery.maskedinput.js {DRUPAL HOME}/sites/all/libraries/masked_input/jquery.maskedinput.1-3.js
cp jquery.maskedinput-1.3.1/dist/jquery.maskedinput.min.js {DRUPAL HOME}/sites/all/libraries/masked_input/jquery.maskedinput.1-3.min.js

制作另一个副本,作为 maskedinput:

cd {DRUPAL HOME}/sites/all/libraries/
cp -a masked_input maskedinput

安装库模块,安装 masked_input 就是这样。现在你可以使用它了。也许 masked_input 需要对 jquery 库 1.4 的兼容性进行一些更新,我不是 Jquery 专家,只是一个想法。

于 2015-02-13T15:30:44.387 回答
0

上面代码的问题是字段类型。它应该是:

'#type' => 'masked_input',代替'#type' => 'textfield',

模块文档显示了这一点,但我两天没有注意到它。

于 2014-06-13T15:58:03.713 回答
0

我下载了 jquery.maskedinput-1.3.js 并将其放入我的 {DRUPAL_HOME}/misc/ui/

这是系统 Drupal 路径,您无需更改其内容。
在 Drupal 库中是存储在特殊库文件夹中的外部脚本。在你的情况下sites/all/libraries
所以文件jquery.maskedinput-1.3.js应该在sites/all/libraries/maskedinput文件夹中。

于 2012-05-23T15:53:22.977 回答