Перебор двух массивов с разными индексами.
Добрый день, не могу решить данную задачу:
есть два массива: 1)первый целостный, допустим вида [1,2,3,4,5,6,7,8,9,10] 2)второй я получаю динамически и он может выглядеть так: [3,4,5,8,9] то есть с пропущенными значениями. Мне надо сделать условие вида: если у второго массива под нулевым индексом значение не "1', то добвляем на страницу, скажем span с классом 'firstArrayValue', иначе span c классом 'secondArratValue' и перебор по всем значениям. То есть на выходе мне нужен все значения первого массива, но с определенной меткой, если они встречаются во втором. Из примера выше: <span class="firstArray">1</span> <span class="firstArray">2</span> <span class="secondArray">3</span> <span class="secondArray">4</span> <span class="secondArray">5</span> <span class="firstArray">6</span> <span class="firstArray">7</span> <span class="secondArray">8</span> <span class="secondArray">9</span> <span class="firstArray">10</span> Первый массив фиксированный, и значения и индексы всегда одинаковые. Подскажите как правильно их перебрать. Спасибо. |
Dima_Dimov,
:write: ... :cray:
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
.firstArray {
background: #FF6666;
}
.secondArray {
background: #339933
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
$(function() {
var firsArr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
cecondArr = [3, 4, 5, 8, 9],
$span = $.map(firsArr, function(el) {
var cls = $.inArray(el, cecondArr) != -1 ? 'secondArray' : 'firstArray';
el = $('<span/>', {
'text': el,
'class': cls
}).appendTo('body')
return el
})
});
</script>
</head>
<body>
</body>
</html>
|
Цитата:
|
ksa,
:yes: |
Спасибо большое за решение. Не знал о таком методе jquery. Ну ладно вам, все учатся, все тупят порой.
|
| Часовой пояс GMT +3, время: 14:58. |