有没有办法可以将例如 0000000000 格式化为 (000)000-0000?我正在返回一个列表框,其中包含一组尚未格式化的电话号码。我想要的是格式化它。这是我在 View 中的内容:
<%= Html.ListBox("phoneList")%>
从 Controller :
ViewData["phoneList"] = new SelectList(phoneList);
编辑
$('#phoneList').each(function() {
var phoneNumber = $(this).text();
var formatPhoneNumber = phoneNumber.replace(/(\d{3})(\d{3})(\d{4})/, '($1)$2-$3');
alert(formatPhoneNumber);
});
我如何分配它以显示在列表框中?
最佳答案
如果你说你想在客户端做这件事,然后给定一个变量中的电话号码,你可以这样做:
var str = "0000000000";
var res = '(' + str.substr(0,3) + ')' + str.substr(3,3) + '-' + str.substr(6);
alert(res);
或者这个:
var str = "0000000000";
var res = str.replace(/(\d\d\d)(\d\d\d)(\d\d\d\d)/, '($1)$2-$3');
alert(res);
编辑:
正如 @Nick Craver 所指出的 第二个版本可以缩短为:
var res = str.replace(/(\d{3})(\d{3})(\d{4})/, '($1)$2-$3');
关于javascript - 格式化为电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3579479/