4

This is my bootstrap multiselect and its working fine

<div class="col-12 col-sm-6 col-md-6 col-lg-4">
      <div class="form-group">
           <p>Required Skills<span class="notice-txt">*</span></p>
               <select class="multisel form-control" data="createNew" name="requiredskills[]" multiple="multiple">
                    @foreach($skills as $sk)
                       <option @if( !empty($JobOrderSkills) and isset($JobOrderSkills[$sk['skillid']]) and $JobOrderSkills[$sk['skillid']]['skillid'] == $sk['skillid']) selected @endif value="{{$sk['skillkey']}}">{{$sk['skill']}}</option>
                    @endforeach
               </select>
       </div>
    </div>

And I am using the same multiselect class in my single select field but it doesnt show the jquery validation message

            <div class="col-12 col-sm-6 col-md-6 col-lg-4">
              <div class="form-group">
                <p>Status<span class="notice-txt">*</span></p>
                  <select class="form-control validrmvcls multisel" name="joborderstatus">
                    <option value="">--Select--</option>
                    @foreach($joborderStatus as $jos)
                    <option @if( !empty($row) && $jos['joborder_status_id'] ==  $row['joborder_status_id'] ) selected @endif value="{{$jos['joborder_status_key']}}">{{$jos['joborder_status']}}</option>
                    @endforeach
                  </select>
              </div>
            </div>

this is my jquery validation

   $(document).ready(function () {
    multipleSelect();
    $('#createNew').validate({
      ignore :[],
      rules : {
         joborderstatus: 'required',
        'requiredskills[]' : 'required'   
      },
      messages : {
         joborderstatus :'Please select Status',
         'requiredskills[]' :'Please select Required Skills'
},
      errorPlacement: function(error, element) {
            if( element.hasClass("validrmvcls")) {
                    error.insertAfter( element.parent("div") );
            }else if (element.hasClass('multisel')) {
                error.insertAfter(element.next('div'));
            }else{
                error.insertAfter(element);
            }
        }
    });

multiple select

    function multipleSelect() {
    $('.multisel').multiselect({
        enableFiltering: true,
        filterPlaceholder: 'Search',
        enableCaseInsensitiveFiltering : true,
        includeSelectAllOption: true,
        onChange: function(element, checked) {
            $(element).valid();
            //var id =  $('.multisel').attr('data');
            //$("#"+id).valid();
        }
        });     
}

Please assist me and thanks in advance

Siva Ganesh
  • 1,415
  • 2
  • 16
  • 28

1 Answers1

0

use ID createNew to your select field

$('#createNew').validate({

$('#createNew') finding the ID with in your code but not find.

use ID to validate functional

Abdul Rehman
  • 628
  • 7
  • 11