0

我从http://uvumitools.com/odometer.html下载了里程表样本, 但只有 Datalist 中的第一个元素获得了里程表,其他元素没有显示里程表。这是代码

<script type="text/javascript" src="js/UvumiOdometer-compressed.js"> </script>
<link rel="stylesheet" type="text/css" media="screen" href="css/uvumi-odometer.css"
<script type="text/javascript">
  var odo2 = new UvumiOdometer('odometer2', { digits: 3 });
</script>`

<asp:DataList ID="dlEquipment" runat="server" DataKeyField="Device_Id" RepeatDirection="Horizontal" RepeatColumns="5" Width="100 > <ItemTemplate> <div id="odometer2<%# Eval("count")%> </div></ItemTemplate>

4

1 回答 1

1

这是因为您odometer2在列表元素中使用静态 ID,文档中的 ID 应该是唯一的,否则document.getElementById(id)将始终返回具有给定 ID 的第一个元素。

如果您使用的是 jQuery,则可以将类属性添加到div

<ItemTemplate> <div class="odometer2"> </div></ItemTemplate>

然后

<script type="text/javascript">
jQuery(function($){
    $('.odometer2').each(function(){
        new UvumiOdometer(this, { digits: 3 });
    })
})
</script>
于 2013-08-17T09:13:16.263 回答