Javascript 选择下拉菜单无法触发jquery函数

Javascript 选择下拉菜单无法触发jquery函数,javascript,jquery,Javascript,Jquery,当选择Y时,两个输入字段都应显示“已完成”,当用户选择“N”时,两个输入字段都应为空,但由于某种原因,代码失败,请注意。非常感谢 if($('.finished1').val('') { $('.finished').val(''); } else if($('.finished1').val('Y')) { $('.finished').val('completed'); } 否则{ $('.finished').val(''); } Y N 试试这段代码 您首先需要通过change事件处

当选择Y时,两个输入字段都应显示“已完成”,当用户选择“N”时,两个输入字段都应为空,但由于某种原因,代码失败,请注意。非常感谢

if($('.finished1').val('')
{
$('.finished').val('');
}
else if($('.finished1').val('Y'))
{
$('.finished').val('completed');
}
否则{
$('.finished').val('');
}

Y
N
试试这段代码


您首先需要通过
change
事件处理程序来计算选择框的值,然后可以使用
switch
语句从中确定要执行的操作

$(函数(){
$('.finished1')。在('change',function()上{
开关(此值){
案例“Y”:
$('.finished').val('completed');
打破
案例“N”:
案例:“”:
$('.finished').val('');
打破
违约:
//
}
});
});

Y
N

您应该使用jquery的ChangeAPI来捕获选择输入中的任何更改,然后您可以检查所选的值并做出相应的响应

$('.finished1')。在('change',function()上{
if($(this).val()=='Y')
$('.finished').val('completed');
其他的
$('.finished').val('');
});

Y
N

您应该使用一个功能来检测下拉选择项中的更改

如果检测到,它将再次检查值,如果需要,将其更改为所选值

$(function () {
    $('.finished1').change(function () {
         if($('.finished1').val(''))
         {
         $('.finished').val('');    
         }
         else if($('.finished1').val('Y'))
         {
         $('.finished').val('completed');   
         }
         else{
         $('.finished').val('');    
         }
    });
});

您的更改功能在哪里?
案例'N','':
?我不认为这是你认为的那样。这应该是一个失败的机会。修正了,酷。说
this.value
而不是
$(this.val()
。嘿,伙计……每当我有机会成为本地人时,我肯定会这么做。谢谢你的帮助谢谢你的帮助谢谢你的帮助如果你使用
this.value
而不是
$(this)。val()
你可以避免两次函数调用,这既容易阅读又更高效,如果您要反转if测试并检查
'Y'
,则可以避免必须检查字段值两次。感谢您的帮助
$(function () {
    $('.finished1').change(function () {
         if($('.finished1').val(''))
         {
         $('.finished').val('');    
         }
         else if($('.finished1').val('Y'))
         {
         $('.finished').val('completed');   
         }
         else{
         $('.finished').val('');    
         }
    });
});