加入2个结果

时间:2016-04-24 06:05:58

标签: jquery join checkbox alert concat

我有一个按钮,可以对已检查的行执行以下操作。我添加了.join('')来删除从第二个返回值开始出现的逗号

var getName = $("input:checkbox:checked").map(function() {
return ($(this).parent().next().next().next().next().next().next().text());
}).get().join('');

var getNum = $("input:checkbox:checked").map(function() {
return ($(this).parent().next().next().next().next().text());
}).get()join('');

alert(getName.concat(getNum));   

当我检查3行并单击按钮时,输出如下:

名1
名称2
NAME3
NUM1

NUM2

NUM3

当我对返回元素进行字符串化时:

var getName = $("input:checkbox:checked").map(function() {
return JSON.stringify($(this).parent().next().next().next().next().next().next().text());
}).get().join('');

var getNum = $("input:checkbox:checked").map(function() {
return JSON.stringify($(this).parent().next().next().next().next().text());
}).get()join('');

alert(getName.concat(getNum));    

输出如下:

“\ n Name1”“\ n Name2”“\ n Name3”“\ n Num1 \ n”“\ n Num2 \ n”“\ n Num3 \ n”

我怎样才能让输出像这样?

姓名1号1 姓名3号2 姓名3号3

1 个答案:

答案 0 :(得分:0)

您可以尝试将两个地图调用加入一个,如下所示:

var getName = $("input:checkbox:checked").map(function() {
return $(this).parent().next().next().next().next().next().next().text()
    + ' ' + $(this).parent().next().next().next().next().text();
}).get().join('');

alert(getName);
顺便说一句,为什么你使用这么多“next()”,那么用“id”或“class”属性标记目标DOM元素呢?因为现在它看起来有点可怕> _< |||

希望这可以提供帮助