我有一组使用标准yui html生成的yui按钮。
<span class="yui-button yui-checkbox-button" id="analystbutton1">
<span class="first-child">
<button type="button" class="facetbutton" tabindex="0" id="analystbutton1-button">
Joe Bloggs
</button>
</span>
</span>
我创建了这样的按钮,然后我有了一些javascript来创建按钮和监听器。
var analystCButton1 = new YAHOO.widget.Button("analystbutton1", { type:"checkbox", value:"BLOGGS", checked:false });
analystCButton1.on("click", onFacetClick);
最后我有onFacetClick功能
var onFacetClick = function (e) { // e is the event
var target = YAHOO.util.Event.getTarget(e);
var button = new YAHOO.widget.Button(target);
alert(button.get('type'));
alert(button.get('id'));
alert(button.get('value'));
};
当我点击我的任何按钮时,前两个警报会显示类型和ID(尽管不是我所期望的)。我无法获取值,警报不会触发,但我在FireBug或错误控制台中看不到任何错误。
警报(button.get( '类型'));返回推送 - 我希望复选框 警报(button.get( '身份证'));返回分析师按钮1按钮
答案 0 :(得分:1)
事实证明我的功能应该更简单 -
var onFacetClick = function (e) { // e is the event
alert(e.get("value"));
};
我想知道e.getTarget()和事件e之间的区别是什么?
e.getTarget正在返回HTMLButtonElement
答案 1 :(得分:1)
e.getTarget()将返回作为事件目标的HTML节点。
事件e是事件对象本身,其中包括事件类型,事件时间等。您可以执行console.log(e)以查看事件对象封装的所有内容。