[英]Get input value from input in array
所以,这有点难以解释,也有待搜索。
我的情况:我有一个网页,允许用户填写多达48个时间字段,所有这些时间字段都是动态生成的,每个字段都有自己的ID,都在div中。
现在,用户还可以选择在任何地方删除字段。 在这种情况下,我想对它们全部重新排序。 示例:用户的时间框为1到8,删除了5。6变为5,7变为6,8变为7。这也应计入ID。
现在,当用户删除一个框时,我将拾取特定div(DailyControls)中的所有div并将它们放入数组中。 所有这些div都有一个名为timepicker的类。
现在我需要从输入框获取值,这些输入框现在也存储在数组中。
这是用于创建文本框的(带有div,位于前面的文本和“删除”按钮)
var newTextBoxDiv = $(document.createElement('div')).attr("ID", 'time' + boxID);
newTextBoxDiv.after().html('<label>Herrinering #' + boxID + ' : </label>' +
'<input type="text" name="timebox' + boxID +
'" id="timebox' + boxID + '" value="" class="timepicker" >' + '<img src="<%= Page.ResolveUrl("~") %>images/ico_delete.png" id="Delete'+ boxID +'" onclick="DeleteTime()"/>');
newTextBoxDiv.attr("class", "timerdiv");
要删除它们,我目前正在使用以下工具:
function DeleteTime() {
var id = event.target.id;
var IdNO = id.replace("Delete", "");
$("#time" + IdNO).remove();
var elemdivs = [];
for (var i = 0; i < $(".timerdiv").length; i++) {
elemdivs.push($(".timerdiv")[i].innerHTML);
}
$('.timerdiv').remove();
for (var i = 0; i < elemdivs.length; i++) {
alert(elemdivs[i]);
}
};
在警报中,我可以看到输入元素以及分区。 但是我不知道如何从那里获得价值
根据您提供的信息,这可能会起作用:
function DeleteTime() {
var id = event.target.id;
var IdNO = id.replace("Delete", "");
$("#time" + IdNO).remove();
var elemdivs = [];
for (var i = 0; i < $(".timerdiv").length; i++) {
elemdivs.push($(".timerdiv")[i]); // don't push innerHTML
}
$('.timerdiv').remove();
for (var i = 0; i < elemdivs.length; i++) {
alert($(elemdivs[i]).find('input').val());
}
};
而不是将timerdiv中的innerHTML插入到timerdiv中。 然后当你访问它时.find()
timerdiv( $(elemdivs[i])
)里面的输入字段,然后从那里得到.val()
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.