评估HTML5数据属性 - 如何处理报价

时间:2015-05-26 09:23:39

标签: javascript jquery html5 kendo-ui

我正在尝试使用自定义数据属性

<span class="k-nav-day" data-dt="kendo.toString(date, 'dd/MM/yyyy')">

</span>

但是当我在JavaScript中尝试下面的代码时,

  var dateOfHeader = $(this).data("dt"); 

它仍然给我引号并且没有得到评估

  "kendo.toString(date, 'dd/MM/yyyy')"

它应格式化'日期',日期应分配给变量“dateOfHeader”= 27/05/2015

注意:我在控制台中没有任何错误

问题背景

我正在使用调度程序控件,我需要根据日期渲染一些颜色。我的数据源是JSON,如下所示

 var mydatafromApi = ({
   date:01/01/2013, 
   percentage=30%,
   color = red
  },
 {
   date:02/01/2013, 
   percentage=40%
   color = blue
 });

现在我需要比较调度程序/日历的每个日期并根据此JSON数据显示背景

因此,在渲染时我将日期存储在自定义数据属性中,但要阅读它我面临的问题。

2 个答案:

答案 0 :(得分:0)

在这种特定情况下,您可以使用javascript eval功能

var dateOfHeader = eval($(this).data("dt"));

答案 1 :(得分:0)

当您使用html中的评估数据调用javascript函数时,需要使用#= #表达式包装函数

data-dt="#= kendo.toString(date, 'dd/MM/yyyy') #"

您应该能够使用jQuery数据获取数据

$(element).data("dt");