#javascript #jquery #ajax
Вопрос:
Я хочу добавить новый div для первого и последнего элемента в цикле. Который мы можем легко получить с помощью длины функции jQuery. Но в моем сценарии мне нужно получить только Первый и Последний пункт, если у нас есть определенные условия.
Я получаю объект из API и на основе значения ключа мне нужно определить, сколько конкретных значений содержится в ключе, а затем добавить новый Div для первого и последнего элементов.
Я хочу добавить новый div, когда в первый раз в скрытом состоянии и в последний раз. Есть ли какой-нибудь способ добавить его?
$.each(obj.dynamicList, function(i, v){
//console.log(i);
var label = v['label'];
var name = v['id'];
var value = v['value'];
var required = v['required'];
var type = v['type'];
var list = v['list'];
if(v['type'] == "Input" amp;amp; v['id'] == "email" ){
$('#part3_append_form').append("<div class='form-group'><label class='ssjob-label'>" label "</label><input type='email' class='form-control' " (required == 'Y' ? 'required': '') " id='" name "' name='" name "' value='" email "'></div>");
}else if( v['type'] == "Hidden"){
$('#part3_append_form').append("<input type='hidden' class='form-control' name='" name "' value='" value "'>");
}else{
$('#part3_append_form').append("<div class='form-group'><label class='ssjob-label'>" label "</label><input type='text' " (required == 'Y' ? 'required': '') " class='form-control' id='" name "' name='" name "' value='" value "'></div>");
}
});
Ответ №1:
вы можете перехватывать объекты скрытого типа с помощью фильтра.
var examplObj= [
{
label: "obj 00",
name: "id",
value: "value",
required: "required",
type: "type",
list: "list",
},
{
label: "obj 01",
name: "id",
value: "value",
required: "required",
type: "type",
list: "list",
},
{
label: "obj 02",
name: "id",
value: "value",
required: "required",
type: "Hidden",
list: "list",
},
{
label: "obj 03",
name: "id",
value: "value",
required: "required",
type: "type",
list: "list",
},
{
label: "obj 04",
name: "id",
value: "value",
required: "required",
type: "Hidden",
list: "list",
},
{
label: "obj 05",
name: "id",
value: "value",
required: "required",
type: "Hidden",
list: "list",
},
{
label: "obj 06",
name: "id",
value: "value",
required: "required",
type: "type",
list: "list",
},
];
var filtered = examplObj.filter((t) => t.type == "Hidden");
var firstHidden = filtered[0]; // first time
var lastHidden = filtered[filtered.length - 1]; // last time