Любой родитель, который существует в момент привязки события, и если ваша страница динамически создавала элементы с помощью кнопки имени класса, вы привязывали бы событие к родительскому, который уже существует
$(document).ready(function(){
//Particular Parent chield click
$(".buttons").on("click","button",function(){
alert("Clicked");
});
//Dynamic event bind on button class
$(document).on("click",".button",function(){
alert("Dymamic Clicked");
});
$("input").addClass("button");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="buttons">
<input type="button" value="1">
<button>2</button>
<input type="text">
<button>3</button>
<input type="button" value="5">
</div>
<button>6</button>
Нет простого способа реализовать это непосредственно в Primeng. Но вы должны сделать трюк для этого. Возможно, это будет не лучшим решением, но оно послужит вашей цели. Это только обходной путь.
Возьмем для примера кнопку радио Primeng.
Я добавил пользовательский класс customeRadio в html, а также добавил тег <a>
в том же качестве, что и значение параметра.
<div class="ui-g-12 customeRadio">
<p-radioButton name="group1" value="Option 1" label="Option 1" [(ngModel)]="val1" inputId="opt1">
</p-radioButton><a href="">Option 1</a>
</div>
<div class="ui-g-12 customeRadio">
<p-radioButton name="group1" value="Option 2" label="Option 2" [(ngModel)]="val1" inputId="opt2">
</p-radioButton><a href="">Option 2</a>
</div>
<div class="ui-g-12 customeRadio">
<p-radioButton name="group1" value="Option 3" label="Option 3" [(ngModel)]="val1" inputId="opt3">
</p-radioButton><a href="">Option 2</a>
</div>
Теперь в файле styles.css или в том месте, где вы хотите написать CSS для него.
Просто скрыть все содержимое метки, используя свойство селектора css:
.customeRadio label{
display:none;
}
Вот и все!
CSS не требуется, просто установите метку для пустой строки и добавьте привязку.