Javascript SAPUI5不处理禁用HTML元素中的onclick事件
我正在开发一个SAPUI5应用程序。在页面中,用户必须先从选择A中选择一个项目,然后再从选择B中选择。在用户从选择A中选择之前,选择B框处于禁用状态 我想要的是:即使当“选择”框被禁用,并且用户在从“选择”框中选择之前尝试单击它时,“选择”框也应该变为红色 我尝试使用onclick事件,但是,当该框被禁用时,它什么也不做 只是作为一种测试,我做了以下几点: oSelectTamanho=新sap.m.Select; oSelectTamanho.onclick=函数{ console.logclick; } 正如我所提到的,它只在框被启用时输出单击,而在框被禁用时我需要它 你知道我怎样才能做到这一点吗?正如你所见,元素不会产生。使用覆盖元素是一种可能的解决方案。使用覆盖div的示例 CSS HTML 在上,如您所见,元素不会生成。使用覆盖元素是一种可能的解决方案。使用覆盖div的示例 CSS HTMLJavascript SAPUI5不处理禁用HTML元素中的onclick事件,javascript,onclick,sapui5,Javascript,Onclick,Sapui5,我正在开发一个SAPUI5应用程序。在页面中,用户必须先从选择A中选择一个项目,然后再从选择B中选择。在用户从选择A中选择之前,选择B框处于禁用状态 我想要的是:即使当“选择”框被禁用,并且用户在从“选择”框中选择之前尝试单击它时,“选择”框也应该变为红色 我尝试使用onclick事件,但是,当该框被禁用时,它什么也不做 只是作为一种测试,我做了以下几点: oSelectTamanho=新sap.m.Select; oSelectTamanho.onclick=函数{ console.logcl
在上,下面是一个使用单个SAPUI5框架API的工作示例: myDisabledControl.addEventDelegate{ onclick://*或ontap://=>警报首先选择另一项!, }; 有关其他可用事件,请参阅
请不要直接操作UI5控件的HTML元素 下面是一个使用单个SAPUI5框架API的工作示例: myDisabledControl.addEventDelegate{ onclick://*或ontap://=>警报首先选择另一项!, }; 有关其他可用事件,请参阅 请不要直接操作UI5控件的HTML元素请考虑接受。当前接受的答案鼓励直接使用渲染的HTMLEnter元素,这在UI5中是应该避免的。请考虑接受。当前公认的答案鼓励直接使用呈现的HTMLElement,这在UI5中应该避免。
#wrapper {
display:inline-block;
position:relative;
}
#overlay {
display:none;
width:100%;
height:100%;
position:absolute;
top:0
left:0;
bottom:0;
right:0;
}
#cars:disabled + #overlay {
display:block;
}
<button id="button">Enable</button>
<div id="wrapper">
<select id="cars" disabled>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
<div id="overlay"></div>
</div>
var button = document.getElementById('button'),
cars = document.getElementById('cars'),
overlay = document.getElementById('overlay');
button.addEventListener('click', function () {
cars.disabled = !cars.disabled;
if (cars.disabled) {
button.textContent = 'Enable';
} else {
button.textContent = 'Disable';
}
}, true);
cars.addEventListener('change', function (evt) {
console.log(evt.target.value);
}, true);
overlay.addEventListener('click', function () {
alert('Disabled');
}, true);