【问题标题】:Thousand separator in forms表格中的千位分隔符
【发布时间】:2019-12-24 09:08:11
【问题描述】:

我正在尝试在我的输入中添加千位分隔符,我该怎么做?我尝试在我的fields() 方法中使用Laravel\Nova\Fields\Currency,但它没有帮助。它仍然在输入中显示值,例如:

100000

我想显示如下:

100,000

如何在 Laravel Nova 中实现它?

public function fields(Request $request)
{
    $fields = [];

    ...
    $fields[] = Currency::make(__('Price'), 'price');

    return $fields;
}

【问题讨论】:

  • 你想在哪里显示分隔符?
  • 在我的表单输入中,在用户输入价格时以清晰的格式向用户显示,然后保存不带分隔符的值。
  • 如果你想做 PHP 做不到的事情,你需要像 javascript 这样的客户端语言
  • 我知道这是一个前端问题,但是我认为有一些专门用于 Laravel Nova 的包或解决方案。因为在 Laravel Nova 中,将自定义 javascript 代码添加到您的项目中并不容易,我不想让它变得比现在更复杂。

标签: php laravel-nova


【解决方案1】:

使用 number_format() docmoney_format() doc(不适用于 Windows),它们在 php 中可用。

【讨论】:

  • 我需要 Laravel Nova 的解决方案,我尝试使用 money_format() 来解决,但没有成功。也许存在 nova 的解决方案或软件包可能会有所帮助。或者有人遇到类似的问题,因为在 nova 中添加一些可以工作的 JavaScript 代码并不容易。
  • @SakuragiRokurota 在money_format() 文档中说它在 Windows 中不起作用。因此,如果您使用的是 Windows,请尝试使用 number_format()。我不知道新星。但一般来说,如果它支持像php这样的语言,它也应该支持建立在它之上的框架。
【解决方案2】:

你可以使用这个包,我最近正要写它: https://novapackages.com/packages/lathanhvien/nova-text-currency

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-06
    • 1970-01-01
    • 2018-06-22
    • 2012-03-05
    相关资源
    最近更新 更多