我在XPage中使用重复控件,其中包含一些重复的按钮。
单击按钮后如何抓住个别按钮或淡出特定按钮? 我已经在onClick上尝试了以下代码,即使是Clientside也没有用
var id = dojo.query("[id='ActionBtn']")[0];
id.setDisabled(true);
答案 0 :(得分:2)
使用#{id:ActionBtn}
获取客户端ID并使用它来获取按钮元素以禁用它:
document.getElementById("#{id:ActionBtn}").disabled=true
或点击
后隐藏它document.getElementById("#{id:ActionBtn}").style.visibility='hidden'
或
document.getElementById("#{id:ActionBtn}").style.display='none'
示例:
<xp:repeat
id="repeat1"
rows="30">
<xp:this.value><![CDATA[#{javascript:[1,2,3,4]}]]></xp:this.value>
<xp:button
value="Label"
id="ActionBtn">
<xp:eventHandler
event="onclick"
submit="false">
<xp:this.script><![CDATA[
document.getElementById("#{id:ActionBtn}").style.display='none'
]]></xp:this.script>
</xp:eventHandler>
</xp:button>
<br />
</xp:repeat>
答案 1 :(得分:0)
在客户端事件中,您可以使用全局对象 thisEvent 获取事件信息。
您可以使用 thisEvent.srcElement 获取触发事件的dom元素。 所以我想你可以这样做:
thisEvent.srcElement.style.display = 'none';
//...
同样以这种方式避免在dom树中进行搜索。