The following code creates radio buttons, but the onclick does not work:
type or paste code here
<div id='radio'></div>
<script>
function radioclick(e){
alert(' clicked ' + e.value);
}
$(document).ready(function(){
var radios = ['Red', 'Yellow', 'Green'];
$('#Radio').append('Choices: ');
for (var value of radios)
{
$('#Radio').append(
$('<input>').prop({
type: 'radio',
id: value,
name: 'rad',
value: value,
onclick: function(){alert(this.name);}
})
).append(
$('<label>').prop({
for: value,
onclick: 'radioclick(this)'
}).html(value)
)
}
//===============================================
// for example:
<html>
<head>
<meta charset="UTF-8">
<title>RADIOS</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script>
function radioclick(e){
alert(' clicked ' + e.value);
}
function buildRadios(){
alert('buildRadios');
var radios = ['Red', 'Yellow', 'Green'];
$('#Radio').append('Choices: ');
for (var value of radios)
{
$('#Radio').append(
$('<input>').prop({
type: 'radio',
id: value,
name: 'rad',
value: value,
onclick: function(){alert(this.name);}
})
).append(
$('<label>').prop({
for: value,
onclick: 'radioclick(this)'
}).html(value)
)
}
</script>
</head>
<body onload="buildRadios()">
<h1>HELLO</h1>
<div id='radio'></div>
</body>
</html>