2012-11-22 61 views
2

我想在我的剑道自动完成中显示描述和日期。以下代码将按预期显示,但日期除外。日期显示的是奇怪的格式Kendo ui自动完成使用WCF

xml: 
<d:SDate m:type="Edm.DateTime">2012-11-21T18:30:51.097</d:SDate> 

如果键入耐克 它将出现耐克(/日期(13534560000)/)

$( “#标题”)kendoAutoComplete({ 的minLength:3 , dataTextField: “SDESC”, dataValueField: “REFID”, 模板: '$ {} data.SDesc' + '(' + '$ {} data.SDate' + ')',

  dataSource: { 
       type: "odata", 
       serverFiltering: true, 
       serverPaging: true, 
       pageSize: 20, 
       transport: { 
        read: "http://localhost:54329/HH_WcfDataService.svc/Product" 
       } 
      } 
     }); 

回答

0

您可以尝试在你的模板使用kendo.parseDate

template: '${ data.SDesc } ' + '(' + '${ kendo.parseDate(data.SDate) }' + ')', 

这里有一个现场演示:http://jsbin.com/ekogex/1/edit

+0

在Q3发布之前,我从来没有见过/ Date(xyz)/ syntax,我可以在哪里阅读它? – OnaBai

+0

这就是Microsoft决定将日期序列化为JSON的方式。不是由Kendo发明:)这里是更多信息:http://www.asp.net/ajaxlibrary/jquery_webforms_serialize_dates_to_json.ashx –

+0

嗨Atanas,谢谢。有什么方法可以将日期格式设置为dd/MM/yyyy格式?请指教? – Supermode

1

您正在获得很奇怪日期格式,因为Date实际上被存储为一个数字。您需要将其格式化为您所需的格式yyyy-mm-dd,mm-dd-yyyy, dd-mm-yyyy,...尝试使用kendo.format和/或kendo.toString(有关以本地/所需格式显示日期的信息,请参阅http://docs.kendoui.com/getting-started/framework/globalization/dateformatting)。 我认为kendo.toString会为你工作,因为它接受一个number作为参数的日期(http://docs.kendoui.c​​om/api/framework/kendo#tostring)

+0

感谢埃米利亚诺,但没有运气呢。任何其他想法? – Supermode