通过Javascript追加到数据列表
我试图通过javascript填充一个数据列表,但失败得很惨。下面的代码(在我看来)看起来不错,但显然不是 我需要从数组中填充数据列表,并最终嵌入到PHP echo中通过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
<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;计数器