在 JavaScript 中——如果我想触发一个按钮,我会这样做——
<button type = 'button' id='myButton'>HiddenButton</button>
<script>
function callAutoClick(){
document.getElementById('myButton').click();
}
</script>
当我想触发此按钮时,请单击文本字段的 onChange -
<input type= 'text' onchange ='callAutoClick()'/>
我无法在 DOJO 中做同样的事情。我找到了使用 Javascript 的解决方案 -
var divId = document.getElementById('myDivID');
divId.getElementsByTagName("button")[0].click();
但我不想依赖 DivID。是否可以在仅知道按钮的 controlID 的情况下单击按钮。我能在网上找到的所有方法都是使用 dojo 作为按钮而不是单击按钮本身来定义 OnClick() 的方法。
另外,我正在使用 BPM 工具设计页面,包括 DivID 更改的部分。当我在 FireBug 中打开页面时,我可以看到 -
<div id="div_1_1_2_1" class="Button CoachView CoachView_invisible CoachView_show" data-ibmbpm-layoutpreview="vertical" data-eventid="boundaryEvent_2" data-viewid="Hidden_Cancel" data-config="config23" data-bindingtype="" data-binding="" data-type="com.ibm.bpm.coach.Snapshot_2d5b8abc_ade1_4b8c_a9aa_dfc746e757d8.Button">
<button class="BPMButton BPMButtonBorder" type="button">Hidden_Cancel</button>
</div>
如果你们可以建议我一种使用 data-viewId 访问 DOM 对象的方法,它也会满足我的需要。
提前致谢 :)