怎么执行完三个事件后得到三个值后再执行另一个函数(只执行一次)

$("input[name='teacher']").change(function() {
teacher= $("input[name='teacher']:checked").parent().text();
$("input[name='classes']").change(function() {
classes= $("input[name='classes']:checked").parent().text();
$("input[name='classroom']").change(function() {
classroom= $("input[name='classroom']:checked").parent().text();
$(".finish").one("click",(function () {
})
})
})
})

我要得到teacher和classes和classroom之后再进行点击操作,并且点击操作只能进行一次,并且点击事件中我要吧这三个值存进json数据中,不能重复,那我要怎么做呢?

帮你的classes,classroom放到外外部绑定,不要内嵌到其他input的change中,要不你先输入classes就无法响应change了,到时你操作完teacher不操作classes那不是一致验证不通过了,而且你操作多次teach会导致classes的change事件叠加了

自己用3个变量存储对应的值,判数3个变量都有值了在执行其他操作

已解决

var count=1;
if(count==1){
$("input[name='teacher']").change(function() {
teacher=$.trim($("input[name='teacher']:checked").parent().text());
})
$("input[name='classes']").change(function() {
classes=$.trim($("input[name='classes']:checked").parent().text());
})
$("input[name='classroom']").change(function() {
classroom=$.trim( $("input[name='classroom']:checked").parent().text());
})
count=2;
}
if(count==2){
change(); //我的操作
count=1;
}