2012-09-10 52 views
0

我正在使用http://designwithpc.com/Plugins/ddSlick#demo。一个插件,用图像,文本等自定义下拉菜单。 我试图从下拉列表中选择一个选择选项时获取文本,但我的浏览器控制台日志说未定义。我已经尝试将数据放入第7行的变量中,但仍然给出了相同的结果。从选择下拉菜单中获取数据

$('#myDropdown').ddslick({ 
    data:ddData, 
    width:300, 
    selectText: "Select your preferred social network", 
    imagePosition:"right", 
    onSelected: function(selectedData){ 
     var selectedData = $('#myDropdown').data('ddslick'); 
     console.log(selectedData.text); 
    } 
}); 

这是ddData的结构:

var ddData = [{ 
    text: "Facebook", 
    value: 1, 
    selected: false, 
    description: "Description with Facebook", 
    imageSrc: "http://dl.dropbox.com/u/40036711/Images/facebook-icon-32.png" 
}, { 
    text: "Twitter", 
    value: 2, 
    selected: false, 
    description: "Description with Twitter", 
    imageSrc: "http://dl.dropbox.com/u/40036711/Images/twitter-icon-32.png" 
}, { 
    text: "LinkedIn", 
    value: 3, 
    selected: true, 
    description: "Description with LinkedIn", 
    imageSrc: "http://dl.dropbox.com/u/40036711/Images/linkedin-icon-32.png" 
}, { 
    text: "Foursquare", 
    value: 4, 
    selected: false, 
    description: "Description with Foursquare", 
    imageSrc: "http://dl.dropbox.com/u/40036711/Images/foursquare-icon-32.png" 
}]; 

回答

0

我通过JSON对象获得的数据。

早期它只返回[对象的对象]

<div id="myDropdown"></div> 
    <script type="text/javascript"> 
     var jsonurl = 'dropDown.html'; 
     $.ajax({ 
      type : 'GET', 
      url : jsonurl, 
      data : {}, 
      success : function(myData) { 
       $('#myDropdown').ddslick({ 
        data : myData, 
        width : 300, 
        selectText : "Select the bill process", 
        imagePosition : "right", 
        onSelected : function(selectedData) { 
         alert(selectedData); 
        } 
       }); 
      }, 
      error : function() { 
      } 
     }); 
    </script> 

但按我的萤火它显示了我这样的

[ 
    { 
     "value":1, 
     "text":"Process_1", 
     "selected":false, 
     "imageSrc":"images//priyan.jpg", 
     "description":"Process_1" 
    }, 
    { 
     "value":2, 
     "text":"Process_2", 
     "selected":false, 
     "imageSrc":"images//priyan.jpg", 
     "description":"Process_2" 
    }, 
    { 
     "value":3, 
     "text":"Process_3", 
     "selected":false, 
     "imageSrc":"images//priyan.jpg", 
     "description":"Process_3" 
    } 
    ] 

JSON响应,那么我改成了这样的..

onSelected : function(selectedData) { 
         alert(selectedData); 
        } 

onSelected : function(myData) { 
         alert(myData.selectedData.text); 
        }