Qml BlackBerry 10 Cascades:如何将数据加载到下拉列表中?
我已经成功地将数据从远程Json web服务加载到QML ListView中,但是对于下拉控件似乎没有这样的功能Qml BlackBerry 10 Cascades:如何将数据加载到下拉列表中?,qml,blackberry-10,blackberry-cascades,Qml,Blackberry 10,Blackberry Cascades,我已经成功地将数据从远程Json web服务加载到QML ListView中,但是对于下拉控件似乎没有这样的功能 是否有人有一个示例或替代方法来完成级联连接到attachedObjects数据源的下拉列表?我有一个替代方法供您使用,请注意,我在这里使用了google的web服务进行演示,您需要将其替换为url并据此解析响应 import bb.cascades 1.0 Page { attachedObjects: [ ComponentDefinition {
是否有人有一个示例或替代方法来完成级联连接到attachedObjects数据源的下拉列表?我有一个替代方法供您使用,请注意,我在这里使用了google的web服务进行演示,您需要将其替换为url并据此解析响应
import bb.cascades 1.0
Page {
attachedObjects: [
ComponentDefinition {
id: optionControlDefinition
Option {
}
}
]
function getData() {
var request = new XMLHttpRequest()
request.onreadystatechange = function() {
if (request.readyState == 4) {
var response = request.responseText
response = JSON.parse(response)
var addressComponents = response.results[0].address_components
for (var i = 0; i < addressComponents.length; i ++) {
var option = optionControlDefinition.createObject();
option.text = addressComponents[i].long_name
dropDown.add(option)
}
}
}
// I have used goole's web service url, you can replace with your url
request.open("GET", "http://maps.googleapis.com/maps/api/geocode/json?address=" + "Ahmedabad" + "&sensor=false", true)
request.send()
}
Container {
DropDown {
id: dropDown
}
Button {
onClicked: getData()
}
}
}
导入bb.cascades 1.0
页面{
附件:[
组件定义{
id:OptionControl定义
选择权{
}
}
]
函数getData(){
var请求=新的XMLHttpRequest()
request.onreadystatechange=函数(){
if(request.readyState==4){
var response=request.responseText
response=JSON.parse(响应)
var addressComponents=response.results[0]。地址\组件
对于(var i=0;i
希望这能有所帮助。它工作正常,返回了正确数量的值,但试图访问我的json对象中的字段却返回了未定义的值。不知道如何调试它。老实说,我在这个开发过程中迷失了方向。我使用了一个数据源,但重要的部分是组件定义。谢谢您好,如何从该下拉列表中获取值并传递到我的web服务url。?