#javascript #jquery
Вопрос:
Я использую повторитель jquery, и поле ввода выглядит следующим образом:
$(document).ready(function () {
$('.repeater').repeater({});
});
function getIndex(item){
let index = $(item).index();
console.log("index >>", index);
}
<!-- outer repeater -->
<form class="repeater">
<div data-repeater-list="outer-list">
<div data-repeater-item>
<input onchange="getIndex(this)" type="text" name="text-input" value="A"/>
<input data-repeater-delete type="button" value="Delete"/>
</div>
</div>
<input data-repeater-create type="button" value="Add"/>
</form>
<script
src="https://code.jquery.com/jquery-3.6.0.min.js"
integrity="sha256-/xUj 3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.repeater/1.2.1/jquery.repeater.min.js"></script>
Здесь поле имени выглядит следующим образом: name="outer-list[0][text-input]"
. Теперь я хочу получить этот первый индекс [0]
. Если поле имя было outer-list[1][text-input]
, то этот индекс должен быть возвращен как 1
. Вот, это jsfiddle
Комментарии:
1. можете ли вы показать больше кодов ?
2. @Swati Не могли бы вы быть немного точнее в том, какую часть вы хотите видеть
3. Если вы объясните, какова ваша конечная цель, мы сможем предложить вам лучший подход, чем тот, который вы считаете правильным.
4. Как эти входные данные генерируются этой частью или правильным html-кодом .
5. Использование :
$(item).closest("[data-repeater-item]").index()
или$(item).parent().index()