Javascript 从输入字段获取未定义的值
所以我有一个页面,人们可以在其中随机生成一些输入字段,所以我需要获得每个输入的值,并将其发送到我的php页面 棘手的是,我不知道最后会有多少个输入,因此我需要某种循环来提取所有的值。这是我现在拥有的,一切似乎都很好,我确实设法获得了所有的输入字段。但由于某些原因,每个输入字段的值似乎都没有定义,有人知道为什么吗Javascript 从输入字段获取未定义的值,javascript,jquery,html,Javascript,Jquery,Html,所以我有一个页面,人们可以在其中随机生成一些输入字段,所以我需要获得每个输入的值,并将其发送到我的php页面 棘手的是,我不知道最后会有多少个输入,因此我需要某种循环来提取所有的值。这是我现在拥有的,一切似乎都很好,我确实设法获得了所有的输入字段。但由于某些原因,每个输入字段的值似乎都没有定义,有人知道为什么吗 $(document).on('click', '#izmena', function(){ $(function() { var collectionA = $
$(document).on('click', '#izmena', function(){
$(function() {
var collectionA = $('.crtezInput');
var datas = [];
$.each(collectionA, function(idx, obj) {
datas.push({ 'input': $(obj).find('input').val() });
});
$.each(datas, function(idx, obj) {
crtezNaziv += obj.input +",";
});
console.log(crtezNaziv);
});
克特兹
您得到的未定义
是因为您正在查找输入
元素中的输入
元素:
var collectionA = $('.crtezInput');
var datas = [];
$.each(collectionA, function(idx, obj) {
datas.push({'input': $(obj).find('input').val()});
// Here -------------^^^^^^^^^^^^^^^^^^^^^^^^^^
});
由于在其他input
元素中没有input
元素,find
没有找到任何内容,val
返回未定义的。(这是唯一的情况,其中val
返回未定义的
,顺便说一句:当调用它的集合中没有元素时。否则它总是返回字符串,可能是空字符串。)
以下是最小的变化:
var collectionA = $('.crtezInput');
var datas = [];
$.each(collectionA, function(idx, obj) {
datas.push({'input': $(obj).val()});
});
…但我可能会更直接一点:
var collectionA = $('.crtezInput');
var datas = collectionA.map(function() {
return {input: this.value};
}).get();
ID为izmena的元素在哪里?