【问题标题】:Kendo Grid and ui-sref rounding up numberKendo Grid 和 ui-sref 向上取整数字
【发布时间】:2015-07-04 19:20:33
【问题描述】:

我正在尝试做一些相对简单的事情,但是遇到一个让我发疯的问题,我确定我错过了一些简单的事情。

我有一个 AngularJS 网站,大部分工作正常,其中我有一个 Kendo Grid。我要做的就是让网格的第一列使用网格数据中的 ID 链接到另一个页面。

我正在使用的代码如下,它主要根据我的要求创建一个链接,但由于某些奇怪的原因,它用作 URL 的一部分的 ID 被四舍五入。举个例子,我需要使用的实际 ID 是 37509488620601829,这是我的 API 返回的内容,如果我将 ID 字段设置为表中的列,则会显示什么内容,但在链接中,它被四舍五入为 37509488620601830(注意最后 2 位数字)。

感谢您对此的任何见解。

   <div kendo-grid k-data-source="SearchResultsGrid" k-columns="[{'field': 'Name' , 'title':'Name', 'template': '<a ui-sref=&quot;Id({ Id: #: Id # }) &quot;>#: Name #</a>'  },{'field': 'Alias' , 'title':'Alias' },{'field': 'Server' , 'title':'Server' },{'field': 'Faction' , 'title':'Faction' }]"></div>

【问题讨论】:

    标签: javascript angularjs asp.net-web-api kendo-grid angular-ui-router


    【解决方案1】:

    首先,将这样的配置保留在 HTML 之外。这使事情更容易阅读和管理。其次,推荐的绑定方式是使用angular的ng-bind或插值({{}})方法,而不是Kendo的默认模板绑定。在您提供给网格的模板中,您可以访问dataItem 变量。这是对行项目的引用。

    HTML:

    <div kendo-grid k-options="gridOptions"></div>
    

    控制器:

    scope.gridOptions = {
        dataSource: SearchResultsGrid,
        columns: [{
            'field': 'Name',
            'title': 'Name',
            // 'template': '<a ui-sref=&quot;Id({ Id: #: Id # }) &quot;>#: Name #</a>'
            'template': '<a ui-sref="{{dataItem.Id}}">{{dataItem.Name}}</a>'
        }, {
            'field': 'Alias',
            'title': 'Alias'
        }, {
            'field': 'Server',
            'title': 'Server'
        }, {
            'field': 'Faction',
            'title': 'Faction'
        }]
    };
    

    【讨论】:

      【解决方案2】:

      尝试更改这部分代码

      '<a ui-sref=&quot;Id({ Id: #: Id # }) &quot;>'
      

      到

      '<a ui-sref="Id({ #: Id # })">'
      

      【讨论】:

        【解决方案3】:

        您不应该提及 html 中的列 def 它自己将其存储在某个范围变量中,然后将该范围变量引用分配给它

        可以在模板中使用 #= variableName # 访问 Kendo 变量,您正在执行 #: variableName #,这会让您遇到问题

        标记

        <div kendo-grid k-data-source="SearchResultsGrid" k-columns="columnDef"></div>
        

        代码

        $scope.columnDef =[{
            'field': 'Name',
            'title': 'Name',
            'template': '<a ui-sref="Id({ \'Id\': #= Id # })">#= Name #</a>'
        }, {
            'field': 'Alias',
            'title': 'Alias'
        }, {
            'field': 'Server',
            'title': 'Server'
        }, {
            'field': 'Faction',
            'title': 'Faction'
        }];
        

        【讨论】:

          猜你喜欢
          • 2015-05-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多