在javascript中访问列表元素
Access list element in javascript
我从服务器(php)得到这个列表:
["Ak-Bulak","Balykchy","Batken"]
我如何访问它并通过js进入选择选项,我尝试的是:
for (var i in data) {
$('#cities').append('<option>'+ data[i] +'</option>');
}
它把每个字符作为一个选项:<option>[</option>
, <option>"</option>
…
如何访问这里的每个元素?不是每个字符…
如果它是php页面上的var,那么像这样的操作就可以了
for (var i in <?php echo '["Ak-Bulak","Balykchy","Batken"]'; ?>) {
$('#cities').append('<option>'+ i +'</option>');
}
看起来你没有列表,你有一个字符串。首先,解析字符串
var list = JSON.parse('["Ak-Bulak","Balykchy","Batken"]')
然后,像你已经做过的那样循环它,或者不使用键:
for (var i=0; i<list.length; i++) {
$('#cities').append('<option>'+ data[i] +'</option>');
}
您需要首先将此字符串解析为JSON。
var buffer = eval(data)
for (var i in buffer) {
$('#cities').append('<option>'+ buffer[i] +'</option>');
}
但是如果你使用eval(),你必须确保输入数据是一致的。更新。
试试这个,
var data='["Ak-Bulak","Balykchy","Batken"]';
data=JSON.parse(data);
for (var i in data) {
$('#cities').append('<option>'+ data[i] +'</option>');
}
怎么样:
var data=<?php echo '["Ak-Bulak","Balykchy","Batken"]'; ?>;
for (var i in data) {
$('#cities').append('<option>'+ data[i] +'</option>');
}
相关文章:
- 将列表元素动画制作到顶部
- 使用Razor和javascript来获得下拉列表元素
- 根据列表元素的值使用JQuery获取列表元素
- 将列表元素动态添加到ul元素中
- 使用 jquery 库获取锚点列表元素内的文本
- 在没有大量回调函数的情况下在列表元素上循环播放同一动画
- 使用JSON和JavaScript添加额外的html列表元素
- iframes:从 iframe 内的子元素访问父元素
- 范围和列表元素在 DIV 中换行
- 如何从不同的元素访问聚合物元素中的属性
- jQuery:影响相同深度的列表元素
- 所选列表元素不会保持选中状态(通过ajax请求更新后)
- D3.js~有没有办法在下拉列表中访问csv标题值
- 一次显示n个列表元素,jQuery
- 将列表元素宽度设置为文本宽度
- 选择列表元素(捕获向下/向上箭头)
- 访问本地存储中的列表元素
- 无法在JavaScript中从Flask模板变量中访问列表元素
- 在javascript中访问列表元素
- 通过请求属性访问存储在var中的列表元素