Javascript 2D数组查询-尽管使用join(),但输出中出现意外逗号;
我正在尽最大努力学习jQuery,但我有点卡住了。我试图在一个表中创建一个表单数据的2d数组,这似乎是可行的,但当我试图获取值时,甚至在使用join()时,我都返回逗号 我想知道我是否做错了什么。我正在使用按钮事件触发警报,以显示join()的值 以下是HTML:Javascript 2D数组查询-尽管使用join(),但输出中出现意外逗号;,javascript,jquery,arrays,forms,Javascript,Jquery,Arrays,Forms,我正在尽最大努力学习jQuery,但我有点卡住了。我试图在一个表中创建一个表单数据的2d数组,这似乎是可行的,但当我试图获取值时,甚至在使用join()时,我都返回逗号 我想知道我是否做错了什么。我正在使用按钮事件触发警报,以显示join()的值 以下是HTML: <table class="table order-list"> <thead> <td>A</td> <td>B</td> <
<table class="table order-list">
<thead>
<td>A</td>
<td>B</td>
<td>C</td>
</thead>
<tbody>
<tr data-key="1">
<td> <input type="text" class="pull-right form-control" name="" value="D"></td>
<td> <input type="text" class="pull-right form-control" name="" value="E"></td>
<td> <input type="text" class="pull-right form-control" name="" value="F"></td>
</tr>
<tr data-key="2">
<td> <input type="text" class="pull-right form-control" name="" value="H"></td>
<td> <input type="text" class="pull-right form-control" name="" value="I"></td>
<td> <input type="text" class="pull-right form-control" name="" value="J"></td>
</tr>
<tr data-key="2">
<td> <input type="text" class="pull-right form-control" name="" value="K"></td>
<td> <input type="text" class="pull-right form-control" name="" value="L"></td>
<td> <input type="text" class="pull-right form-control" name="" value="M"></td>
</tr>
</tbody>
</table>
<button id="btn1" style="width:100px, height:100px">Click</button>
这是我上面的输出:D,E,FH,I,JK,L,M假设您的目标是删除输出字符串中的所有逗号,那么您还需要
连接()内部数组。还请注意,可以使用箭头函数使代码更加简洁。试试这个:
$(“#btn1”)。单击(函数(){
var tableData=$('tr')。map(('tr')=>[
$(tr).find(':input').map((508;,inp)=>inp.value.get().join('')
]).get();
console.log(tableData.join(“”));
});代码>
#btn1{宽度:100px;高度:100px;}
A.
B
C
单击
谢谢Rory!那很好用。最终我想使用php来获取这个数组并将其存储在SQL中,您认为使用这样的2d数组是合适的,还是需要使用json之类的东西?我肯定会使用json,这样您就可以保持数据的2d结构完整,虽然这是否重要取决于您使用它的目的。我一直在研究这一点,我注意到每个数据元素都有一个用来标识它的引用,所以当我在上面使用JSON stringify时,它返回以下内容:[[],[“D”,“E”,“F”],[“H”,“I”,“J”],[“K”,“L”,“M”]。我不确定那是对的。你知道正确的程序是什么吗?(很抱歉问了这么多问题!)我觉得这是对的。您的意思是要删除第一个空的[]
?我认为我看到的示例JSON更多的是使用名称来标识每个项目。我偷了一些其他代码,并设法以这种格式生成了一个对象数组。你知道我如何访问这个表中的各个变量吗,tableData[1][1]似乎对这个不起作用:key:key:1值:(3)[…] 0:“D”1:“E” 2:“F”长度:3个值:数组(3)[“D”,“E”,“F”]:{…
$("#btn1").click(function(){
var tableData = $('tr').map(function() {
return [$(this).find(':input').map(function() {
return $(this).val()
}).get()]
}).get()
alert(tableData.join(""));
console.log(tableData)
});