Jquery 如何附加textarea值以在数组中运行

Jquery 如何附加textarea值以在数组中运行,jquery,forms,append,Jquery,Forms,Append,我有一个数组,它是通过获取一个div中所有链接的值创建的,当我将这些值添加到一个textarea并将它们发送到我的服务器时,它只拉最后一个,使用控制台我注意到数组保存了所有的值,正如我设置它时的警报一样,那么,如何将所有的值连接成一个带有逗号的长字符串呢?这是我的密码 $(".populate").click(function(){ var array = $.makeArray( $('li.item-link a')); jQuery.each(array, function(

我有一个数组,它是通过获取一个div中所有链接的值创建的,当我将这些值添加到一个textarea并将它们发送到我的服务器时,它只拉最后一个,使用控制台我注意到数组保存了所有的值,正如我设置它时的警报一样,那么,如何将所有的值连接成一个带有逗号的长字符串呢?这是我的密码

 $(".populate").click(function(){
   var array = $.makeArray( $('li.item-link a'));
   jQuery.each(array, function(index, value) {
     console.log("index", index, "value", value);
     alert(value);
     $("#CAT_Custom_196863").val(value);
   });
 });
有人有什么想法吗

祝你一切顺利 塔拉

您的
$(“#CAT_Custom_196863”).val(值)行正在将整个值设置为最新的

相反,请使用以下内容:

$("#CAT_Custom_196863").val($("#CAT_Custom_196863").val() + ', ' + value);
试一试


rest是逻辑

val方法替换当前值。请尝试以下方法:

$(".populate").click(function(){
   var array = $.makeArray( $('li.item-link a'));
   var newVal = '';
   jQuery.each(array, function(index, value) {
     console.log("index", index, "value", value);
     alert(value);
     newVal += value + ','; // comma?
   });

   // In order to skip the last comma, uncomment this line:
   // if(newVal.length > 0) newVal = newVal.substr(0, newVal.length - 1);

   $("#CAT_Custom_196863").val(newVal);
});

您可以使用Javascript数组的连接方法:

$("#CAT_Custom_196863").val($.MakeArray($('li.item-link a')).join(", ")); $(“#CAT_Custom_196863”).val($.MakeArray($('li.item-link a')).join(“,”);
顺便说一句,Blair McMillan是正确的,您设置的是整个值,而不是添加到值中。

获取
#CAT_Custom_196863
并在每次迭代中创建jQuery对象是不必要的开销。如果有很多链接,这可能真的很慢,我同意,但是,它清楚地向op展示了它在做什么,我只是说使用类似的东西。如果不知道OPs使用的背景,就不可能知道是否会对速度产生任何可感知的影响。不过你的答案更正确,所以对你来说+1!OP需要逗号分隔,或者调整
newVal+=value适当。谢谢,你说得对!我错过了他写的“带逗号”:)大量优秀的建议,我很想稍后再尝试!我会让你知道:)谢谢!!
$("#CAT_Custom_196863").val($.MakeArray($('li.item-link a')).join(", "));