DataType.PhoneNumber属性对显示没有影响

时间:2018-06-18 17:50:31

标签: asp.net-mvc html5 asp.net-mvc-viewmodel

我的视图模型中的[DataType(DataType.PhoneNumber)]字段上有String。但是,当显示电话号码时,它将呈现为没有格式化的简单字符串。

我的视图模型中的另一个字段具有[DataType(DataType.Url)]属性,正确呈现为HTML元素。

我有两个问题:

  1. 为什么DataType.Url装饰字段会正确呈现 DataType.PhoneNumber字段看起来像一个普通的字符串,没有特定于手机的格式?

  2. 如何将PhoneNumber呈现为有效的电话号码     (例如(xxx) xxx-xxxx之类的东西。如果你告诉我必须使用。DataFormat     DataFormatString属性为DataType.PhoneNumber,那么是什么     甚至有一个#For example #I want to fill df1 with the number in df2 df1=data.frame(c("J","A","A"),c("A","K","K")) l=table(c("J","A","K","A","A","J","A")) df2 =as.data.frame(l) > df1 c..J....A....A.. c..A....k....k.. 1 J A 2 A K 3 A K > df2 Var1 Freq 1 A 4 2 J 2 3 K 1 #ideal results c..J....A....A.. c..A....K....K.. 1 2 4 2 4 1 3 4 1

1 个答案:

答案 0 :(得分:-1)

对于您的第一个问题,Url有一个特定的语法,如果不遵循将不是一个正确的网址。

电话号码没有任何特定格式。仅在美国你可以拥有

XXX-XXX-XXXX

(xxx)xxx-xxxx

(XXX)XXX-XXXX

xxx.xxx.xxxx

1(xxx)xxx-xxxx

然后您将使用国家/地区代码前缀进入国际号码。

010 64 3 477 4000

0011 64 3 477 4000

+64 3 477 4000

所有这些都是有效的电话号码

input="tel"允许您嵌入电话号码,以便在移动(手机)浏览器中点击它,它会预先填充拨号器中的电话号码。

对于数据注释,它们呈现正确的html,它们将具有正确的html5类型标记。由浏览器实际实现屏幕上的内容或解释应如何验证。