繁体   English   中英

JQuery 中的 If/Else 语句

[英]If / Else statement in JQuery

如何将这一行修改为如果interview_schedule_id为空; 它保持隐藏状态,如果它不是空的; 表明。

$('.interview_schedule-div'+program_input.data('id')).removeClass('hide');

脚本的其余部分:

function getInterviewSchedule(element)
{
    var program_input = $(element);
    var intake_id = $("[name='intake_id']").val();
    var campus_id = $('[name="program[' + program_input.data('id') + '][campus_id]"]').val();
    var program_id = $('[name="program[' + program_input.data('id') + '][program_id]"]').val();

    if(program_id != '' && program_id != null){
        $.ajax({
          type: 'GET',
          url: '{{ route("campus_program.interview_schedule") }}',
          data: {
            intake_id: intake_id,
            campus_id: campus_id,
            program_id: program_id
          },
          success: function (data) {
            var select_data = [];

            $.each(data, function(i, object) {
              select_data.push({id:i, text:object});
            });
            $('.interview_schedule-div'+program_input.data('id')).removeClass('hide');
            $('[name="program[' + program_input.data('id') + '][interview_schedule_id]"').select2({
              data: select_data,
              placeholder: "Please Select",
              allowClear: true
            });
            $('[name="program[' + program_input.data('id') + '][interview_schedule_id]"]').val('').trigger('change');

            @if(!empty($intake_select))
            if (intake_id == {{ $intake_select }})
            {
                @for ($i = 0; $i < $form_setting['total_program']['show']; $i++)
                @if (!empty($student_program[$i]->interview_schedule_id))
                <?php $interview_schedule_id = $student_program[$i]->interview_schedule_id; ?>
                $('[name="program['+{{$i}}+'][interview_schedule_id]"]').val({{$interview_schedule_id}}).trigger('change');
                @else
                $('[name="program['+{{$i}}+'][interview_schedule_id]"]').val('').trigger('change');
                @endif
                @endfor
            }
            @endif
          }
        });
    }
}

和 HTML:

<div class="form-group interview_schedule-div{{$i}} hide">
      <label class="col-lg-2 control-label">{{ msg('lbl_interview_schedule') }}</label>
      <div class="col-lg-6">
          {!! Form::dropdown('program['.$i.'][interview_schedule_id]', ['' => ''], @$student_program[$i]->interview_schedule_id, [
            'data-id' => $i,
            'class' => 'select2-form program-input'
          ]) !!}
      </div>
</div>

谢谢,

您可以使用 jquery“toggleClass”。 如果 toggleClass 方法的第二个参数解析为“truthy”,则添加类“hide”,否则将删除。

我假设“interview_schedule_id”是 html 元素,如果是这种情况,您可以使用 $('#interview_schedule_id').length 检查它的存在,

$('.interview_schedule-div'+program_input.data('id').toggleClass("hide",$('#interview_schedule_id').length);

您可以像这样使用 jQuery 方法show()hide()

let div = $('.interview_schedule-div' + program_input.data('id'));
div.children().length > 0 ? div.show() : div.hide();

注意:下面的两个示例具有相同的代码。 一个示例具有带有子元素的 div,而另一个示例具有一个空的 div。 此外,div 类interview_schedule-div...在这里写成interview_schedule-div1因此我们可以访问它进行测试。


例子:

 let div = $('.interview_schedule-div1'); div.children().length > 0 ? div.show() : div.hide();
 .interview_schedule-div1 { padding: 20px; background-color: #09f; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="form-group interview_schedule-div1 hide"> <label class="col-lg-2 control-label">Schedule</label> <div class="col-lg-6"></div> </div>

 let div = $('.interview_schedule-div1'); div.children().length > 0 ? div.show() : div.hide();
 .interview_schedule-div1 { padding: 20px; background-color: #09f; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="form-group interview_schedule-div1 hide"> </div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM