我在 html/php/js 中有数字文本框,用户将在其中输入 4 到 7 位数字。但是我希望用户看到每三个数字之间的空格。
例如,
User inputs: 8000
User sees: 8 000
User inputs 9100045
User sees: 9 100 045
我该如何实现这一点,以使输入保持为 int 并且不会转换为带有空格的字符串?
谢谢!
我在 html/php/js 中有数字文本框,用户将在其中输入 4 到 7 位数字。但是我希望用户看到每三个数字之间的空格。
例如,
User inputs: 8000
User sees: 8 000
User inputs 9100045
User sees: 9 100 045
我该如何实现这一点,以使输入保持为 int 并且不会转换为带有空格的字符串?
谢谢!
使用标准文本框,这是不可能的。
使用 javascript,您可以在每次按键后重新格式化内容,并在必要时添加空格。然而,正如@Jukka K. Korpela所指出的,这可能会让用户感到非常困惑。另一种方法是进行此更改onchange
,以便仅在文本框失去焦点时发生格式设置。
然后在服务器端,删除所有空格以返回一个整数。
在 PHP 中执行此操作。例如,如果用户在此处输入输入:
<input type="text" name="number" />
在 PHP 中,将其获取为:
$number = intval(trim($_POST["number"])); // Get it as number
$number = number_format($number, 2, ' ', ' ');
// The value will be 5 00 000 for $number = 500000
$number = number_format($number);
// The value will be 6 000 000 for $number = 6000000
有关详细信息,请参阅数字格式。希望这可以帮助!:)