Ionic framework 动态更改离子警报按钮类
有没有一种方法可以从按钮中动态添加和删除类 这就是我如何向Ionic alert添加按钮的方式-Ionic framework 动态更改离子警报按钮类,ionic-framework,event-handling,alert,Ionic Framework,Event Handling,Alert,有没有一种方法可以从按钮中动态添加和删除类 这就是我如何向Ionic alert添加按钮的方式- const alert = this.alertCtrl.create({ title: 'Alert title', cssClass: 'my-alert-class', buttons: [ { text: 'Button 1', handler: data => { return false; }, cssClass: 'some-class' }, { t
const alert = this.alertCtrl.create({
title: 'Alert title',
cssClass: 'my-alert-class',
buttons: [
{ text: 'Button 1', handler: data => { return false; }, cssClass: 'some-class' },
{ text: 'Button 2', handler: data => { return false; }, cssClass: 'some-class' }
]
});
注意处理程序中的返回false
。这将防止警报关闭(正常)
因此,由于警报未关闭,我想更改该按钮的CSS属性,以确定单击了哪个按钮
如果没有sol,我可以选择添加/删除事件侦听器,因为我找不到任何内置方法来实现这一点,所以我编写了以下内容来实现该功能
const buttonElms: NodeList = document.querySelectorAll('.my-ionic-alert .alert-button-group .alert-button');
// add "click" event listener to each button
for(let index = 0; index < buttonElms.length; index++) {
buttonElms[index].addEventListener('click', this.selectedButtonHandler);
}
selectedButtonHandler = (event: MouseEvent)=>{
// handler for clicked button
let target: any = event.target; // target element
let siblings: HTMLCollection = target.parentElement.children; // list of all siblings
for(let index = 0; index < siblings.length; index++){
siblings[index].classList.remove('selected-button'); // remove selected class from all siblings
}
target.classList.add('selected-button'); // add selected class to currently selected item
};
const buttonElms:NodeList=document.queryselectoral('.my-ianic-alert.alert-button-group.alert-button');
//将“单击”事件侦听器添加到每个按钮
对于(让索引=0;索引{
//单击按钮的处理程序
让target:any=event.target;//目标元素
让同级:HTMLCollection=target.parentElement.children;//所有同级的列表
for(让索引=0;索引