Как найти предыдущий или следующий элемент из массива в Javascript?

импортировать следующее:

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4 import QtGui, QtCore

В классе Ui_MainWindow (объект) заменить объект на QWidget:

Ui_MainWindow(QWidget)
0
задан Kamalesh M. Talaviya 18 January 2019 в 07:04
поделиться

3 ответа

Вы можете установить текущую выбранную позицию идентификатора в глобальной переменной следующим образом: Например,

let currentPos = 1;

, затем по кнопке prevButton вы можете перемещаться

arr [currentPos-1] & amp; изменить currentPos = currentPos -1;

и таким же образом для nextButton

arr [currentPos + 1] & amp; изменить currentPos = currentPos + 1;

0
ответ дан Kamalesh M. Talaviya 18 January 2019 в 07:04
поделиться

Вы можете сделать это различными способами.

var arr = [{'id':4},{'id':5},{'id':7},{'id':8},{'id':9}], arrids=arr.map(e=>e.id);
var current_id = 5, prev_btn = $("#prev"), next_btn = $("#nex");
prev_btn.click(e=>{ 
  current_id--;
  var prevObj = arr[arrids.indexOf(current_id)] ? arr[arrids.indexOf(current_id)] : null;
  console.log(prevObj);
});
next_btn.click(e=>{
  current_id++;
  var nextObj = arr[arrids.indexOf(current_id)] ? arr[arrids.indexOf(current_id)] : null;
  console.log(nextObj);
})

Измените это для своих нужд.

0
ответ дан Aaryan Adil 18 January 2019 в 07:04
поделиться

Вы можете попробовать этот код здесь:

Описание:

  1. Точный индекс предмета и проверить свою текущую позицию в массиве.

  2. отображают текущий индекс.

  3. , когда предыдущая кнопка проверяет, что первый элемент не является массивом, если не обуславливает декремент и отображает значение текущего элемента -1.

  4. , когда вы щелкаете по следующему и тому же условию, и это последний элемент или нет, отметьте здесь и измените текущий индекс и приращение отображаемого значения 2.

в следующем приращении показа нажатия кнопки за раз по 2, потому что, когда текущий индекс увеличивается, тогда он показывает приращение 2, основная причина - это увеличение элемента 1, а индекс содержит 0. Таким образом, это увеличение на 2 за один раз.

Если вы показываете после itemIndex--;, то вы увеличиваете на единицу.

var arr = [{'id':4},{'id':5},{'id':7},{'id':8},{'id':9}];
var  current_id = 5;
//find the your current id is exist in the array
var itemIndex = arr.map(function(o) { return o.id; }).indexOf(current_id);
//display the value of index
document.getElementById('display').innerHTML = itemIndex+1;
document.getElementById('prev').addEventListener('click', function(e) {
  if(itemIndex!=-1 && itemIndex != 0){
    document.getElementById('display').innerHTML = itemIndex;
    itemIndex--;
  }
});
document.getElementById('next').addEventListener('click', function(e) {
  if(itemIndex!==-1 && arr.length-1 > itemIndex){
    document.getElementById('display').innerHTML = itemIndex+2;
    itemIndex++;
    /*document.getElementById('display').innerHTML = itemIndex+1;*/
 }
});
<div id="display"></div>
	<button id="prev">prev</button>
	<button id="next">next</button>

Спасибо

0
ответ дан Md. Abu Sayed 18 January 2019 в 07:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: