Javascript 将字符串数组传递给输入jquery的value属性
我有一个带有id=“clientAdd”的输入标记,当用户在其上写入并单击“输入”时,写入的标记可以作为标记添加到div中,并且所有标记都保存为字符串数组。我希望将此数组传递给隐藏输入标记id=“clientAddCode”的值Javascript 将字符串数组传递给输入jquery的value属性,javascript,jquery,html,Javascript,Jquery,Html,我有一个带有id=“clientAdd”的输入标记,当用户在其上写入并单击“输入”时,写入的标记可以作为标记添加到div中,并且所有标记都保存为字符串数组。我希望将此数组传递给隐藏输入标记id=“clientAddCode”的值 我尝试将字符串数组传递给隐藏输入标记id=“clientAddCode”的值,但它总是给我空值 var stringList = []; $("#clientAdd").keypress(function (e) { if (e.which === 13) {
我尝试将字符串数组传递给隐藏输入标记id=“clientAddCode”的值,但它总是给我空值
var stringList = [];
$("#clientAdd").keypress(function (e) {
if (e.which === 13) {
$(".target").append("<a href='#' class='tag'>" +"<span class='removeAddress'>"+'+'+"</span>"+ this.value + "</a>");
stringList.push(this.value);
this.value = "";
$(document).on("click", ".removeAddress", function() {
var removeItem = $(this).parent().clone().children().remove().end().text();
stringList = $('.removeAddress').map(function(){
return $(this).parent().clone().children().remove().end().text()
}).get()
$(this).parent().remove();
$("#clientAddCode").val(stringList);
console.log(stringList);
});
}
});
var stringList=[];
$(“#客户端添加”)。按键(功能(e){
如果(e.which==13){
$(“.target”)。追加(“”);
stringList.push(这个.value);
此值为“”;
$(document).on(“click”,“.removeAddress”,function()){
var removietem=$(this).parent().clone().children().remove().end().text();
stringList=$('.removeAddress').map(函数(){
返回$(this).parent().clone().children().remove().end().text())
}).get()
$(this.parent().remove();
$(“#clientAddCode”).val(字符串列表);
console.log(stringList);
});
}
});
您应该将数组转换为单个字符串,您可以使用以下函数:
join()方法将数组的元素连接成字符串,并返回字符串
array.join(分隔符)
可选的分隔符。要使用的分离器。如果省略,元素之间用逗号分隔
请参见以下内容:
var arr=[“test1”、“test2”、“test3”];
var stringList=arr.join(“,”);
console.log(stringList);
//用div写
$(“#clientAddCode”).html(字符串列表);
//写一篇课文
$(“#myList”).val(字符串列表)代码>
请共享所有相关的JS代码,以便我们了解问题所在。如果您试图将字符串数组传递给输入,请将其作为JSON字符串传递(在输入值中使用JSON.stringify(您的数组)
)。当您获取它时,使用JSON.parse(您的\u JSON\u字符串)
@Mihai T我编辑了它,并在stringList.push(this.value)之后检查plzAfter
,您正在分配值stringList=$('.removeAddress')。映射…
这样推送的值会丢失吗?你能调试吗?谢谢你,但我的主要问题是把这些值test1,test2,test3发送到输入标记的属性值它总是值为空。我不确定你在问什么,无论如何请看我更新的示例。要设置值
属性,应使用.val()
方法。
var stringList = [];
$("#clientAdd").keypress(function (e) {
if (e.which === 13) {
$(".target").append("<a href='#' class='tag'>" +"<span class='removeAddress'>"+'+'+"</span>"+ this.value + "</a>");
stringList.push(this.value);
this.value = "";
$(document).on("click", ".removeAddress", function() {
var removeItem = $(this).parent().clone().children().remove().end().text();
stringList = $('.removeAddress').map(function(){
return $(this).parent().clone().children().remove().end().text()
}).get()
$(this).parent().remove();
$("#clientAddCode").val(stringList);
console.log(stringList);
});
}
});