我正在使用 dart 开发一个应用程序,我想获取点击元素的值。IE:
html:
<div id="blah">Value!!</div>
镖:
void main(){
query("#blah").onClick.listen(showValue);
}
void showValue(Event e){
//Get #blah's innerHtml based on the Event(Something like e.target.innerHtml or e.target.value)
}
任何人?我知道如何在 JS 中做到这一点,但我想知道是否有办法在 DART 中做到这一点!
编辑
谢谢大家,我会尽量清楚一点。我有一个循环动态生成 9 个元素并将它们添加到容器中。
代码:
var j = 0;
var optionsSquare = query("#optionsPanel");
while(j < 9){
DivElement minorSquare = new DivElement();
var minorSquareHeight = optionsSquare.clientHeight/3;
var minorSquareWidth = optionsSquare.clientWidth/3;
minorSquare
..attributes = {"class": "miniSugg"}
..style.width = (minorSquareWidth.round()-2).toString().concat("px")
..style.height = (minorSquareHeight.round()-2).toString().concat("px")
..style.float = "left"
..style.border = "1px solid"
..innerHtml = (j+1).toString();
..onClick.listen(showOptionsSquare);
optionsSquare.children.add(minorSquare);
j++;
}
如果我尝试使用@Pandian 的方式,它可以工作,但我只能得到循环内最后一个元素的值。我想要的是以某种方式追踪点击的元素并获得它的价值!
编辑 2
各位,刚刚解决了!
如果有人需要这些信息,我会把这里的代码作为回购:
void showOptionsSquare(Event e){
window.location.hash = "#optionsPanel";
mainDiv.style.opacity = (0.2).toString();
DivElement clicked = e.target;
window.alert(clicked.innerHtml);
}
[]的