我已定义sap.m.Button
为SAP UI5视图,当我在开发人员工具中看到“元素”标签时,元素如下所示
<div class="sapUiVltCell sapuiVltCell">
<button id="Submit" data-sap-ui="Submit" class="sapMBtn sapMBtnBase">
<span id="Submit-inner" class="sapMBtnDefault sapMBtnInner sapMBtnText sapMFocusable">
<span class="sapMBtnContent" id="Submit-content">
<bdi id="Submit-BDI-content">Submit</bdi>
</span>
</span>
</button>
</div>
当我使用DOM元素onClick
函数捕获单击按钮时,我发现Event.target.id
具有id="Submit-BDI-content"
,它是div节点的最后一个元素,而不是id Submit
。 / p>
我需要按钮元素Submit
而不是Submit-BDI-content
的div ID
我知道可以使用document.getElementById("Submit-BDI-content").parentNode.parentNode.parentNode
来读取父元素,但是由于要编写通用逻辑,所以我不想使用它。在此示例中,有两个span元素,但是另一个按钮可能没有任何span元素。
我正在寻找一种可以为我提供被单击元素的div ID元素的逻辑。
有人可以建议吗?
答案 0 :(得分:0)
您可以尝试使用JQuery
$("#Submit").click(function(){
alert("button");
});
或者为什么要捕获DOM元素单击功能,您可以使用press属性来定义单击按钮时调用的功能。
<Button text="Click Me" press="onclickFn" ></Button>
在控制器中-
onclickFn : function(){
//body of click function
}