Javascript для нумерации страниц - PullRequest
0 голосов
/ 13 февраля 2019

Я новичок в JavaScript.У меня проблема с моим кодом.Надеюсь, кто-нибудь может мне помочь.

Я делаю 2 кнопки и 1 выпадающий.2 кнопки - Btn-Next и Btn-Previous.И при выпадении Btn-Next щелкает страница. Страница увеличивается на 1 (например, по умолчанию 1, при нажатии будет 2).И когда btn-предыдущий клик, Page уменьшится на -1 (например, по умолчанию 2, когда выбрано будет 1).

И проблема в том, когда я меняю выпадающий список и пытаюсь нажать 1 кнопку.Опция ложна.

Btn Далее:

$("#btn-next").on('click', function () {

    var datahalaman = $("#halaman").val();

    $(".pagetotal").find("option[value ='" + datahalaman + "']").removeAttr('selected');

    var inchalaman = parseFloat(datahalaman) + 1;

    var datahalamanbaru = $("#halaman").val(inchalaman);

    var halamannext = inchalaman + 1;

    var tek = datahalamanbaru.val();

    $(".pagetotal").find("option[value ='" + tek + "']").attr('selected', 'selected');

})

Btn предыдущий:

$("#btn-previous").on('click', function () {

    var datahalaman = $("#halaman").val();

    $(".pagetotal").find("option[value ='" + datahalaman +"']").removeAttr('selected');

    var inchalaman = parseFloat(datahalaman) - 1;

    var datahalamanbaru = $("#halaman").val(inchalaman);

    var tek = datahalamanbaru.val();

    $(".pagetotal").find("option[value ='" + tek + "']").attr('selected', 'selected');

})

Выпадающий список:

$(document).on('change', '#pagetotal', function () {

    var optionSelected = $("option:selected", this);

    var valueSelected = this.value;

    var datahalaman = $("#halaman").val();

    $(".pagetotal").find("option[value ='" + datahalaman + "']").removeAttr('selected');

    var fix =$("#halaman").val(valueSelected)

    var fix = $("#pagetotal").find("option[value ='" + fix.val()+"']").attr('selected', 'selected');

})

1 Ответ

0 голосов
/ 13 февраля 2019

В этом нам нужно проверять каждый щелчок и изменение элементов, которые у нас есть, также создали скрипку для этого точного требования: https://jsfiddle.net/rt7dmoL5/3/

Попробуйте следующий код, чтобы решить проблему:

  $(".selectpage").on("change",function(){
    validateSelectedPrev();
  });
var validateSelectedPrev = function(){
  var selectedValue =$(".selectpage").prop('selectedIndex');
  if(selectedValue == 0){
    $(".prev").attr("disabled","true");
  }else{
    $(".prev").removeAttr("disabled");
  }

  if($(".selectpage").prop('selectedIndex') == ($(".selectpage option").length-1)){
    $(".next").attr("disabled","true");
  }else{
    $(".next").removeAttr("disabled");
  }
}
  validateSelectedPrev();
$(".prev").click(function(){
    var selectedInd  =$(".selectpage").prop('selectedIndex');
    $(".selectpage").val($(".selectpage option").eq(selectedInd-1).val());
    validateSelectedPrev();
  });
  $(".next").click(function(){
     var selectedInd  =$(".selectpage").prop('selectedIndex');
     $(".selectpage").val($(".selectpage option").eq(selectedInd+1).val());
     validateSelectedPrev();
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...