预先填充文本框

时间:2017-09-18 16:04:53

标签: javascript jquery html cfml

image1

下面是获取所有序列号并将每个序列设置为文本框的代码 如何根据序列计数动态添加文本框。

$("#SerialList #" + key).val(value);
if(key == "SERIALNO_LIST")
{
    var array = value.split(",");
    for(i = 0; i < array.length; i++){
        j = i + 1;
    }
    $("#SerialList #OLDSERIAL" + j).val(array[i].trim());
}

编辑功能:

function insertRow() {
  var table = document.getElementById('createTable');
  var row = table.insertRow(table.rows.length - 1);
   for (var colIndex = 0; colIndex < numOfCols; colIndex++) {
    var cell = row.insertCell(0);
    var input = document.createElement('input');
    input.setAttribute('type', 'text');
    input.id = "SERIAL" + cellIndex;
    input.addEventListener('focus', function(e){
    return SerialAutoComplete(this);
    });
    cell.appendChild(input);        
    cellIndex++;
  }
}

<div id="editSerialList" title="Edit Engine Build">
<B>Group Name:</B>&nbsp;&nbsp;<input type="text" id="GROUPNAME" size="50"/>
<table cellpadding="10" id="EditTable">
<tr><td colspan="4"><div id="STATUSDIVID"  style="width:580px;"></div></td></tr>
<tr><td><input type="hidden" id="BATCHNO" name="BATCHNO"></td></tr>
 <tr>
      <td><input type="text" id="OLDSERIAL1" onfocus="SerialAutoComplete1(this)" /></td>
      <td><input type="text" id="OLDSERIAL2" onfocus="SerialAutoComplete1(this)" /></td>
      <td><input type="text" id="OLDSERIAL3" onfocus="SerialAutoComplete1(this)" /></td>
      <td><input type="text" id="OLDSERIAL4" onfocus="SerialAutoComplete1(this)" /></td>
    </tr>
    <tr>
      <td class="add-users">Add Users:</td>
      <td colspan="3" style="border:none; padding:8px;">
        <select id="addUsers2" name="addUsers2" multiple="multiple"></select>
        <input type="button" value="Add Row" name="AddRow" id="AddRow" class="button-green engineCancel" onClick="insertRow1()" /></td>
    </tr>

</table>
</div>

如果我的值计数为5,我需要在设置文本框之前添加5个文本框,即在我设置值之前预先填充/添加文本框。

1 个答案:

答案 0 :(得分:0)

您可以使用Array()作为参数传递号码,Array.prototype.fill()传递"<input>"作为参数,Array.prototype.join() ""作为参数,{{1}将HTML字符串附加到.insertAdjacentHTML()

中的特定元素

document

或者使用let n = 5; document.body .insertAdjacentHTML("beforeend", Array(n).fill("<input>").join(""));

String.prototype.repeat()