Вы можете использовать .prop()
в сочетании с переменной isChecked
для достижения этого.
var isChecked = false;
$('input[type="radio"]').click(function() {
$(this).prop('checked', !isChecked);
isChecked = !isChecked;
if(isChecked) f1();
else f2();
});
var f1 = function(){
console.log("F1");
};
var f2 = function(){
console.log("F2");
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="radio" />
Обновлено
Вы также можете использовать 2 переключателя, как это
$('input[type="radio"]').click(function() {
var value = $(this).filter(":checked").val();
if(value === 'f1')
f1();
else
f2();
});
var f1 = function(){
console.log("F1");
};
var f2 = function(){
console.log("F2");
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="radio" name="my_radio" value="f1" /> <label>F1</label>
<input type="radio" name="my_radio" value="f2" /> <label>F2</label>