【问题标题】:AngularJS - Difference between ng-grid and data-ng-gridAngularJS - ng-grid 和 data-ng-grid 之间的区别
【发布时间】:2013-11-26 23:07:57
【问题描述】:

我使用可用于 VS2012 的 AngularJS 模板创建了一个 ASP.NET MVC 4 项目。在其中一个页面中,网格是用 html 编码的,例如

<div class="grid-style" data-ng-grid="userGrid">
</div>

但是在搜索网格的问题时,我看到人们使用 like

<div class="grid-style" ng-grid="userGrid">
</div>

data-ng-gridng-grid 有什么区别?

【问题讨论】:

    标签: javascript asp.net angularjs ng-grid


    【解决方案1】:

    虽然这个问题已经有一个正确的答案,但值得注意的是,这与浏览器支持无关——data 属性实际上是在 XHTML 和 HTML 规范中定义的,因此是有效的标记。使用data-ng-* 是一种很好的做法,但这不是因为浏览器合规性;这是为了验证。 (在 HTML 的情况下,有效的标记是首选。在 XHTML 的情况下,有效的标记是至关重要的,否则页面将中断。)

    .NET HTML 标记将使用data-ng 属性,以便生成将通过验证规则的 HTML 标记。同样,这对于 XHTML 更为重要,但对于 HTML 仍然很重要。

    【讨论】:

      【解决方案2】:

      就 angularjs 而言,它们实际上是相同的东西。浏览器更广泛地支持自定义属性的数据前缀。您还可以使用类版本的指令,它得到了更广泛的支持,如下所示。

      <div class="ng-grid=userGrid">
      </div>
      

      【讨论】:

      • 这与浏览器支持无关。所有浏览器都允许自定义属性,但它们不被视为标准 HTML。数据前缀被添加到 HTML 规范中以标记您自己的自定义属性并使 HTML 有效。使用 data 的可选 Angular 标记只是为了让您的 HTML 生效。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-23
      相关资源
      最近更新 更多