Javascript 未选择选项值时删除div

Javascript 未选择选项值时删除div,javascript,laravel,html-select,ajaxform,laravelcollective,Javascript,Laravel,Html Select,Ajaxform,Laravelcollective,这有什么问题 function admSelectCheck(nameSelect) { console.log(nameSelect); if(nameSelect){ admOptionValue = document.getElementById("admOption").value; if(admO

这有什么问题

            function admSelectCheck(nameSelect)
            {
                console.log(nameSelect);
                if(nameSelect){
                    admOptionValue = document.getElementById("admOption").value;
                    if(admOptionValue === nameSelect.value){
                        document.getElementById("admDivCheck").style.display = "block";
                    }
                    else{
                        document.getElementById("admDivCheck").style.display = "none";
                    }
                }
                else{
                    document.getElementById("admDivCheck").style.display = "none";
                }
            }
有两个选项,一个名为FLIGHT,另一个名为REGION

<div class="col-xs-12 col-sm-12 col-md-12">
            <div class="form-group">
                <strong>Type:</strong>
                {!! Form::select('type', \App\Destination::getEnum('type'),\App\Destination::getEnum('type'), array('onchange' => "admSelectCheck(this);", 'id' => "admOption")) !!}
            </div>
        </div>
        <div class="col-xs-12 col-sm-12 col-md-12">
            <div class="form-group" id="admDivCheck" style="display:none;">
                <strong>Flights:</strong>
                {!! Form::text('flights_data', null, array('class' => 'form-control')) !!}
            </div>
        </div>

类型:
{!!Form::select('type',\App\Destination::getEnum('type'),\App\Destination::getEnum('type'),array('onchange'=>“admSelectCheck(this);”,'id'=>“admOption”)!!}
航班:
{!!Form::text('flights_data',null,array('class'=>'Form control'))
当我选择Flights时,将显示输入字段Flights,但当我选择REGION时,将显示输入字段 航班仍然出现。 我希望它在我选择区域后消失


请提供帮助。

您需要更改此选项,因为它总是返回true:

if(admOptionValue === nameSelect.value){
对于这一点:

if (admOptionValue === "FLIGHT") {
问题在于
nameSelect.value
document.getElementById(“admOption”).value
相同,因为nameSelect变量实际上指向同一个元素,这是通过使用
this
引用调用javascript函数来实现的

样本:

函数admSelectCheck(名称选择){
如果(名称选择){
admOptionValue=document.getElementById(“admOption”).value;
如果(admOptionValue==“航班”){
document.getElementById(“admDivCheck”).style.display=“block”;
}否则{
document.getElementById(“admDivCheck”).style.display=“无”;
}
}否则{
document.getElementById(“admDivCheck”).style.display=“无”;
}
}

类型:
区域
航班
航班:

您需要更改此选项,因为它总是返回true:

if(admOptionValue === nameSelect.value){
对于这一点:

if (admOptionValue === "FLIGHT") {
问题在于
nameSelect.value
document.getElementById(“admOption”).value
相同,因为nameSelect变量实际上指向同一个元素,这是通过使用
this
引用调用javascript函数来实现的

样本:

函数admSelectCheck(名称选择){
如果(名称选择){
admOptionValue=document.getElementById(“admOption”).value;
如果(admOptionValue==“航班”){
document.getElementById(“admDivCheck”).style.display=“block”;
}否则{
document.getElementById(“admDivCheck”).style.display=“无”;
}
}否则{
document.getElementById(“admDivCheck”).style.display=“无”;
}
}

类型:
区域
航班
航班:

非常感谢,你就是我需要的:),不是以-1投票给我的人,再次感谢,效果很好:)非常感谢,你就是我需要的:),不是以-1投票给我的人,再次感谢,效果很好:)