【发布时间】:2020-02-10 19:21:44
【问题描述】:
我正在尝试将下拉菜单限制为您在最大标记输入字段中输入的任何数字。例如。如果您在最大标记输入字段中输入 10,则标记字段中的下拉菜单将限制为 10
我尝试使用 onchange,但不知道如何使用我在 for 循环的最大标记字段中输入的数字来创建下拉菜单
$(document).ready(function () {
load();
});
function load(){
$("#txtNoOfRec").focus();
$("#btnNoOfRec").click(function () {
$("#AddControll").empty();
var NoOfRec = $("#txtNoOfRec").val();
if(NoOfRec > 0) {
createControll(NoOfRec);
}
});
}
function createControll(NoOfRec) {
var tbl = "";
tbl = "<table>"+
"<tr>"+
"<th> Section </th>"+
"<th> Max </th>"+
"<th> Comment </th>"+
"<th> Marks </th>"+
"</tr>";
for (i=1; i<=NoOfRec; i++) {
tbl += "<tr>"+
"<td>"+
"<input type='text' id='txtSection' placeholder='Section' autofocus/>"+
"</td>"+
"<td>"+
"<input type='text' id='txtMax' placeholder='Max' />"+
"</td>"+
"<td>"+
"<input type='text' id='txtComment' placeholder='Comment' />"+
"</td>"+
"<td>"+
"<select id='ddlMarks'>";
for (let a = 0; a <= 100; a++) {
tbl += "<option>" + a + "</option>";
}
tbl += "</select>"+
"</td>"+
"</tr>";
}
tbl += "</table>";
$("#AddControll").append(tbl);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="dvMain">
<label id="lblNoOfRec"> Enter No Of Rows</label>
<input type="text" id="txtNoOfRec"/>
<input type="button" value="CREATE" id="btnNoOfRec" />
</div>
<br>
<div id="AddControll">
</div>
【问题讨论】:
-
您希望
ddlMarks具有与您的输入相同数量的<option>对吗?只需使用NoOfRec作为您的条件循环,就像您在上面所做的那样。标记列,是您想要与输入相同数量的项目吗?行已正确创建 -
我希望下拉菜单与您在最大标记输入字段中的表单中输入的内容相同,而不是您在创建行数的输入字段中输入的内容
-
查看更新的答案
标签: javascript jquery html forms onchange