Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript访问li文本以创建新列表_Javascript_List_Function_Append - Fatal编程技术网

如何使用javascript访问li文本以创建新列表

如何使用javascript访问li文本以创建新列表,javascript,list,function,append,Javascript,List,Function,Append,我无法使此函数正常工作。它只列出foodlist的第一个单词(默认情况下是food),如果我从foodlist中选择了多个项目,则不会为每个选择创建新的li。我做错了什么 到目前为止,我发现最好的方法是将列表字符串拆分成一个数组,然后将0索引附加到searchList。但它只会列出食物列表中的第一项 函数addToList(){ 让food=document.getElementById(“food”).value; let amount=document.getElementById(“am

我无法使此函数正常工作。它只列出foodlist的第一个单词(默认情况下是food),如果我从foodlist中选择了多个项目,则不会为每个选择创建新的li。我做错了什么

到目前为止,我发现最好的方法是将列表字符串拆分成一个数组,然后将0索引附加到searchList。但它只会列出食物列表中的第一项

函数addToList(){
让food=document.getElementById(“food”).value;
let amount=document.getElementById(“amount”).value;
let unit=document.getElementById(“unit”).value;
设li=document.createElement(“li”);
li.textContent=食物+“”+数量+“”+单位+”;
文件.getElementById(“foodlist”).appendChild(li);
让checkbox=document.createElement('input');
checkbox.type=“checkbox”;
checkbox.value=1;
li.appendChild(复选框);
};
函数附加值(){

对于(i=0;i您有
if(list.checked=true)
,这在我看来不像比较-它的计算结果总是为true。

除了错误的比较(这是一个赋值)之外,您需要获取
食物列表的元素,并检查是否选中了一个输入。然后更新列表

函数addToList(){
让food=document.getElementById(“food”).value;
let amount=document.getElementById(“amount”).value;
let unit=document.getElementById(“unit”).value;
设li=document.createElement(“li”);
li.textContent=食物+“”+数量+“”+单位+”;
文件.getElementById(“foodlist”).appendChild(li);
让checkbox=document.createElement('input');
checkbox.type=“checkbox”;
checkbox.value=1;
li.appendChild(复选框);
}
函数addtopanty(){
对于(i=0;i





盎司 英镑 一份

添加
    添加到搜索 您正在搜索包含以下内容的配方:
      那么你是说如果我输入“food two-three”,我应该得到三个
      li
      s?一个带“food”(加上数量等),另一个带“two”(加上数量等),还有一个带“three”?您的代码似乎没有试图实现这一点。您使用
      split
      的方法是正确的,也许可以告诉我们您尝试了什么,我们可以告诉您发生了什么。更新条件if(list.checked=true){with if(list.checked=true){with the===它根本不起作用。如果输入并选择了zzz amount unit和uuuu amount unit,我希望它将zzz和uuuu作为单独的列表项返回。这是正确的,但似乎与OP描述的问题无关。值得评论,而不是回答。(Haresh已经这样做了。)非常感谢!我如何让它只返回食物名称呢?因为它返回的是:食物数量单位,但我希望它返回的只是食物为了获得干净的字符串,我将食物存储在一个数组中,并将索引作为复选框的
      。然后从复选框中选择值,并从数组中选择食物。