javascript - 循环数组,附加输入文本框,然后设置这些文本框的值

标签 javascript jquery arrays

我正在尝试循环并根据存储在数组中的值附加一些容器,然后相应地设置这些值,但我目前正在复制这些值并且无法在每次循环时获得不同的值循环。

var arr_tele = ['02991812376', '02982919291'];

//Prevent Duplicates.
$(".teledivcontain").remove();

//Append Container for numbers
$("#telediv").append('<div class="form-group col-md-3" id="teledivcontain"> </div>');

//Loop and append fields for each number
for (i in arr_tele) {
  $("#teledivcontain").append('<input type="text" class="form-control telenumber" placeholder="No number currently" disabled><div class="form-group col-md-3"><button type="submit" class="btn btn-primary form-control detach">Detach</button></div>').find('input:text').val(arr_tele[i]);
}
.fieldpos {
  margin-left: 45px;
  width: 40%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="panel-body row fieldpos">
  <fieldset class="form-group">
    <label for="telenum">Your Telephone Numbers</label>
    <div class="row">
      <div id="telediv">
      </div>
    </div>
  </fieldset>
</div>

我遗漏了一些小东西,但看不到任何人有什么想法?

最佳答案

您必须找到附加的最后一个输入然后分配值,因此只需添加 :last选择器将完成工作:

.find('input:text:last').val(arr_tele[i])

或者您可以直接使用 <input value="'+arr_tele[i]+'" ... 分配值.

希望这对您有所帮助。

var arr_tele = ['02991812376', '02982919291'];

//Prevent Duplicates.
$(".teledivcontain").remove();

//Append Container for numbers
$("#telediv").append('<div class="form-group col-md-3" id="teledivcontain"> </div>');

//Loop and append fields for each number
for (i in arr_tele) {
  $("#teledivcontain").append('<input type="text" class="form-control telenumber" placeholder="No number currently" disabled><div class="form-group col-md-3"><button type="submit" class="btn btn-primary form-control detach">Detach</button></div>').find('input:text:last').val(arr_tele[i]);
}
.fieldpos {
  margin-left: 45px;
  width: 40%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="panel-body row fieldpos">
  <fieldset class="form-group">
    <label for="telenum">Your Telephone Numbers</label>
    <div class="row">
      <div id="telediv">
      </div>
    </div>
  </fieldset>
</div>

关于javascript - 循环数组,附加输入文本框,然后设置这些文本框的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38848499/

相关文章:

iPhone 上 "Add to Home Screen"的 Javascript?

Javascript数组访问外部函数

jquery - 获取当前附加到 &lt;input&gt; 元素的文件列表

Javascript:用数组中的图像填充表格

c# - 单声道 2.6.7 : Array Initializer Bug?

javascript - 查找匹配的数组对象属性

javascript - 创建类似于 FourSquare 网站上使用的智能交互式 map

javascript - postman 为 node.js 端点返回 404

javascript - 获取没有设置 css 的 div 的 .outerheight() 返回错误的数字

jquery - 如何编辑 jquery 函数