我试图在我的代码中获取已检查列表项的索引,但无法找出方法。我的 HTML 代码如下 -
<h2 data-dojo-type="dojox/mobile/RoundRectCategory">Select Your Range :</h2>
<ul id="list" data-dojo-type="dojox/mobile/RoundRectList" data-dojo-props='select:"single"'>
<li data-dojo-type="dojox/mobile/ListItem" data-dojo-props='checked:true'>Within 1 KM</li>
<li data-dojo-type="dojox/mobile/ListItem" >Within 3 KM</li>
<li data-dojo-type="dojox/mobile/ListItem" >Within 5 KM</li>
</ul>
我尝试使用 dojo.query 来访问选中的列表项,但它也不起作用。有人可以帮助我如何实现这一目标吗?
我的道场代码-
dojo.query("#list>li:checked").forEach(function(node) { alert("in for loop"); });
我尝试使用下面的代码,它给了我一个与默认选择的列表项相对应的索引 0 的警报,但是当我选择任何其他列表项时,我仍然收到默认选择的列表项的警报。当我检查 Google chrome 的开发人员工具时,我发现当我选择任何其他列表项时,默认列表项的 data-dojo-props='checked:true' 不会更改为 false。这是 listitem 的正确行为吗?理想情况下,它应该更改为 false 并且选中的新列表项的属性应该更改为“true”,但这不会发生。谁能解释一下这种行为并告诉我获取所选列表项索引的最佳方法?
dojo.query("#list>li[data-dojo-props='checked:true']").forEach(function(node,index) { alert("in for loop"+ index); });
注意 - 我决定在我的列表项中使用 dojo 单选按钮,它工作得很好,但我仍然希望在这方面获得帮助,只是为了了解这个功能。