Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

79
Views
Changing select field selectedIndex in filtered field

My select field is filtered as below:

 $("#asortyment option").filter(function() {
      $(this).toggle($(this).text().toLowerCase().indexOf(value) > -1);
    });

To change selected option I use code:

  function wiecej(){
    var asort_select = document.getElementById("asortyment");
    asort_select.selectedIndex = asort_select.selectedIndex + 1;  
    $("#asortyment").trigger("change");
  };

But the problem is that function wiecej change option to next but in not filtered select.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Use the jQuery :visible pseudo-class to match the non-filtered elements. And use :gt to start after the currently selected option.

function wiecej() {
  var asort_select = document.getElementById("asortyment");
  let current = asort_select.selectedIndex;
  let next = $(`#asortyment option:gt(${current}):visible`).first();
  if (next.length > 0) {
    $(asort_select).val(next.val()).change();
  }
};

about 4 years ago · Juan Pablo Isaza Report

0

Filter visible options and then change selected index:

function wiecej(){
    var asort_select = document.getElementById("asortyment");
    var nextItem = $("#asortyment option:gt("+asort_select.selectedIndex+")").filter(function(){ return $(this).css('display') != 'none';}).first();
    var nextIndex = 0;
    if (nextItem.length > 0 ) {
        nextIndex = nextItem[0].index;
    } else {
        var nextItem = $("#asortyment option").filter(function(){ return $(this).css('display') != 'none';}).first();
        nextIndex = nextItem[0].index;
    }
    asort_select.selectedIndex = nextIndex;  
    $("#asortyment").trigger("change");
};
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!