SELECTED ANSWER
replied on April 20, 2022
You can use the following, just set a class called "myTable" on your table, and a class called "myRadio" on the radio column.
You can use whatever class names you like, just make sure they are unique to those elements and that you update the code accordingly.
The event handler is attached to the table since the rows don't exist on document ready (i.e., they're added later via the lookups) so this avoids unnecessary complexity.
By attaching it to the table we can use event bubbling to detect changes to the radio buttons regardless of whether or not those rows/inputs exist when the handler is assigned.
$(document).ready(function(){
// delegated event handler watches the table for changes to the radio inputs
$('.myTable').on('change','.myRadio input[value="Yes"]',function(){
if ($(this).is(':checked')){
// get parent row and table body
var row = $(this).parents('tr');
var table = $(this).parents('tbody');
// loop each row in table body
table.find('tr').each(function(index, value){
// if not same row as "yes" value
if (!row.is(value)) {
// select "no" value
$(value).find('input[value="No"]').prop('checked',true).change();
}
});
}
});
});