Javascript 如何使用jquery在字符串中添加变量

Javascript 如何使用jquery在字符串中添加变量,javascript,jquery,Javascript,Jquery,我正在将一些html添加到列表中,但无法将所选的_files.name值传递到函数中。请看下面的图标 for (var i = 0; i < selected_files.length; ++i) { children += '<div class="del" onclick="javascript:removeImageFromList(selected_files[i].name)">X</div>' + sele

我正在将一些html添加到列表中,但无法将所选的_files.name值传递到函数中。请看下面的图标

for (var i = 0; i < selected_files.length; ++i) {
    children += '<div class="del" onclick="javascript:removeImageFromList(selected_files[i].name)">X</div>' + selected_files[i].name + '<br>';
}
for(变量i=0;i';
}
什么是传递信息的正确方式?当我从removeImageFromList函数内部登录时,它将接收一个
选定的\u文件[I]。名称作为字符串而不是值。

您可以使用。它很容易阅读,你可以忘记在哪里添加
+

例如,我将
选择的_文件
模拟为具有
名称
属性的数组

const selected_files=[{name:“first”},{name:“second”}];
让孩子们“”;
对于(变量i=0;i`;
}

console.log(儿童)要传递对象中包含的值,需要执行后面在字符串中执行的操作:

children += '<div class="del" onclick="javascript:removeImageFromList(' + selected_files[i].name + ')">X</div>' + selected_files[i].name + '<br>'; 
children+='X'+选定的_文件[i]。名称+'

请尝试下面的代码片段

var selected_files=[{name:'abc'},{name:'xyz'}]
var children='';
对于(变量i=0;i';
}

log('children-->',children)您只需将函数调用变量移到字符串之外,就像您在末尾所做的那样

像这样:

for (var i = 0; i < selected_files.length; ++i) {
    children += '<div class="del" onclick="javascript:+removeImageFromList('+selected_files[i].name)+'">X</div>' + selected_files[i].name + '<br>';
}
for(变量i=0;i';
}

您的代码有两个问题:

  • 您正在将html(一个div)作为字符串追加,这很容易出现拼写错误。编辑器不会更正字符串,但会更正javascript
  • 实际上,您正在该字符串中添加javascript。我想说的是,这是一个明确的“不”在代码土地
您可以通过javascript方式创建DOM元素来解决这个问题。然后可以添加eventListener以响应鼠标单击

let selected_files = [{name:"henk"},{name:"wim"}]

for (let i = 0; i < selected_files.length; i++) {
  let div = document.createElement("div")
  div.classList.add("del")
  div.innerText = selected_files[i].name
  div.addEventListener("click", ()=>{
      removeImageFromList(selected_files[i].name)
  })
  document.body.appendChild(div)
}

function removeImageFromList(str){
  console.log(str)
}
let selected_files=[{name:“henk”},{name:“wim”}]
for(设i=0;i{
removeImageFromList(所选文件[i].name)
})
document.body.appendChild(div)
}
函数removeImageFromList(str){
console.log(str)
}

这里有很多需要改进的地方,但为此,您需要启动和停止变量周围的字符串,就像您在div和br标记之间所做的那样。