第一:您可以将设置 id 作为标志,如下所示:
<a data-role="button" class="view" data-click="onClick" id="#=id#">Details</a>
第二:您可以使用 Kendo-template 将数据传递给您的模板: http ://docs.kendoui.com/getting-started/framework/templates/overview
<div id="modal" data-role="modalview" style="width: 95%; height: 95%;">
</div>
<script id="javascriptTemplate" type="text/x-kendo-template">
<ul>
#=data['indexKey']#
</ul>
</script>
<script type="text/javascript">
function onclick(e)
{
var dataSet = $('#eventfeed').data("kendoMobileListView").dataSource._pristine; //raw data-source
var currentData;
var curID = e.sender.element.attr('id');
for(var i=0; i < dataSet.length; i++)
{
if(dataSet[i].id == curID)
{
currentData = dataSet[i];
break;
}
}
var template = kendo.template($("#javascriptTemplate").html());
var htmlCode = template(currentData); //Execute the template
$("#modal").html(htmlCode); //Append the result
$("#modal").data("kendoMobileModalView").open();
}
</script>
如果您的数据没有任何ID
,那么您可以使用uid(由 kendo-ui 自动生成)。所以可以通过这种方式获取dataSet:
$('#eventfeed').data("kendoMobileListView").dataSource._data
然后你的代码是这样的:
<script type="text/javascript">
function onclick(e)
{
var dataSet = $('#eventfeed').data("kendoMobileListView").dataSource._data;
var currentData;
var curUID = e.sender.element.closest('li').attr('data-uid');
for(var i=0; i < dataSet.length; i++)
{
if(dataSet[i].uid == curUID)
{
currentData = dataSet[i];
break;
}
}
var template = kendo.template($("#javascriptTemplate").html());
var htmlCode = template(currentData); //Execute the template
$("#modal").html(htmlCode); //Append the result
$("#modal").data("kendoMobileModalView").open();
}
</script>