使用foreach循环增加重复的可能性

时间:2018-05-17 10:09:02

标签: javascript jquery

是否可以使用" foreach"两次递增重复功能?循环?

例如,您有一个包含输入字段的函数。当你调用该函数时,你得到2个输入字段,但是第一个字段应该得到" Syllablescounter [0]"第二个是Syllablescounter [1]作为名字。

与之相关的代码概述:

$(document).ready(function() {
 var id = 0;
 var addOpdracht = $('<a/>', {
'class': 'btn btn-success',
'id': 'addOpdracht'
  }).on('click', function() {
  $('form').append(getExerciseBlock(id));
 $(".exerciseGetWordInput_" + id).focus().select();
 id++;
 exerciseAudioInput++;
 SyllablesID++;
  }).html('<i class="fa fa-plus fa-2x"></i>');

  $('form').append(addOpdracht);
  $('form').append(getExerciseTitle());
  });


function getWordPartInput(id, cValue){
  cValue = cValue || '';
  var wpInput = $('<input/>', {
    'class': 'form-group form-control syllable',
    'type': 'text',
    'value': cValue,
    'placeholder': 'Syllables',
    'id': 'SyllablesGetWordPartInput',
    'name': 'Syllablescounter['+ SyllablesID +']'
  });
  return wpInput;
}

我正在寻找的代码片段:

function getWordPartInput(id, cValue){
  cValue = cValue || '';
  var wpInput = $('<input/>', {
    'class': 'form-group form-control syllable',
    'type': 'text',
    'value': cValue,
    'placeholder': 'Syllables',
    'id': 'SyllablesGetWordPartInput',
    'name': 'Syllablescounter['+ SyllablesID +']'
  });
  return wpInput;
}

上面的代码是关于音节(带有蓝色占位符的输入字段)。当我点击绿色&#34;添加&#34;在这里,您可以随意使用并寻找自己。按钮它确实以&#34; + 1&#34;递增,但两个标准弹出音节最终都有相同的名称计数器,当我点击蓝色&#34;添加&#34;按钮添加一个额外的音节,它计数+1,但如果你再次点击它,你会看到添加的音节也有相同的名称计数器。我希望每个音节都有自己的计数器。不是两倍相同的数字。我在考虑一个&#34; foreach&#34;循环,但我不确定这是否会有所帮助,如果解决方案很简单,我很抱歉。我对javascript / jquery很新。 https://jsfiddle.net/DanDy/sa2eowhh/2/

1 个答案:

答案 0 :(得分:1)

addOpdracht按钮中删除增量:

var addOpdracht = $('<a/>', {
'class': 'btn btn-success',
'id': 'addOpdracht'
  }).on('click', function() {
  $('form').append(getExerciseBlock(id));
 $(".exerciseGetWordInput_" + id).focus().select();
 id++;
 exerciseAudioInput++;
 // SyllablesID++;
  }).html('<i class="fa fa-plus fa-2x"></i>');

并在getWordPartInput函数中递增它:

function getWordPartInput(id, cValue){
  cValue = cValue || '';
  var wpInput = $('<input/>', {
    'class': 'form-group form-control syllable',
    'type': 'text',
    'value': cValue,
    'placeholder': 'Syllables',
    'id': 'SyllablesGetWordPartInput',
    'name': 'Syllablescounter['+ SyllablesID++ +']'
  });
  return wpInput;
}

这将自动使用SyllablesID值,然后在每次函数调用时将其递增1。

我已经更新了你的小提琴:https://jsfiddle.net/sa2eowhh/3/