Jquery 如何附加textarea值以在数组中运行
我有一个数组,它是通过获取一个div中所有链接的值创建的,当我将这些值添加到一个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(
$(".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(", "));