Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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追加到数据列表_Javascript_Html_Html Datalist - Fatal编程技术网

通过Javascript追加到数据列表

通过Javascript追加到数据列表,javascript,html,html-datalist,Javascript,Html,Html Datalist,我试图通过javascript填充一个数据列表,但失败得很惨。下面的代码(在我看来)看起来不错,但显然不是 我需要从数组中填充数据列表,并最终嵌入到PHP echo中 <html> <head> <script type="text/javascript"> function populate() { var cars = ["Saab", "Volvo", "BMW"]; var counter=0; for (counter=0; co

我试图通过javascript填充一个数据列表,但失败得很惨。下面的代码(在我看来)看起来不错,但显然不是

我需要从数组中填充数据列表,并最终嵌入到PHP echo中

<html>
<head>

<script type="text/javascript">

function populate()
{
 var cars = ["Saab", "Volvo", "BMW"];   
 var counter=0; 

 for (counter=0; counter<cars.length; counter++)
 {   
  options +='<option value='+cars[counter]+'/>';     
  document.getElementById('mylist').innerHTML = options;
 }
}

</script>


</head>
<body>



<input list="mylist" />

<datalist id="mylist">
<option value="address1">
<option value="address2">
</datalist>


 <input type="button" onclick="populate();" >

</body>
</html>

函数填充()
{
var汽车=[“萨博”、“沃尔沃”、“宝马”];
var计数器=0;

对于(counter=0;counter,您的代码似乎唯一的问题是您忘记定义变量“options”。我是从按原样运行代码时返回的错误中得到这一点的:

“消息”:“未捕获引用错误:未定义选项”

通过在变量声明中包含
var options='';
,它看起来像是做了您想要做的事情。我还删除了
options+='';
行中的正斜杠,因为它将正斜杠附加到select中每个选项的末尾

当然还有其他方法可以实现相同的结果,但这证明了您所采用的方法只需要一行额外的代码即可工作


函数填充()
{
var汽车=[“萨博”、“沃尔沃”、“宝马”];
var计数器=0;
var选项=“”;

对于(counter=0;counter只有少数地方需要更改以使代码运行

  • 您需要在循环之前定义
    选项
  • 只有在准备完整的选项列表后,才能添加
    innerHTML
  • 代码中的其他地方也很少得到优化

    
    函数填充()
    {
    var汽车=[“萨博”、“沃尔沃”、“宝马”];
    var期权=”;
    对于(变量计数器=0;计数器解决方案
    你在很多地方都错过了。常见的错误

    就像在每个迭代器中声明新的选项变量一样。必须在循环外声明它。研究代码以了解错误。
    祝你好运

    
    函数填充()
    {
    var汽车=[“萨博”、“沃尔沃”、“宝马”];
    var计数器=0;
    var options=document.getElementById('mylist').innerHTML;
    用于(计数器=0;计数器