从服务器获取JsonData到具有缓存的另一个函数

时间:2013-01-13 00:02:33

标签: javascript jquery asp.net-mvc json

我正在尝试使用插件进行下拉列表,该插件接收选择的选项值的JSON数据。 http://designwithpc.com/Plugins/ddSlick

$('#myDropdown').ddslick({
    data:ddData,
    width:300,
    selectText: "Select your preferred social network",
    imagePosition:"right",
    onSelected: function(selectedData){
        //callback function: do something with selectedData;
    }   
});

这里ddData是具有下拉列表数据的JSON变量。我正在尝试使用jQuery.getJSON()从服务器中提取数据,我有两个问题。

  1. 如何缓存数据?
  2. 如何从服务器获取jsondata并直接输入上述功能?
  3. 通过查看jQuery.getJSON()的示例,它执行回调以使用内部数据。所以我不确定如何直接传递结果。

    我正在寻找类似下面的内容,但它不起作用。

    $('#myDropdown').ddslick({
        data:$.getJSON('ajax/test.json'),
        width:300,
        selectText: "Select your preferred social network",
        imagePosition:"right",
        onSelected: function(selectedData){
            //callback function: do something with selectedData;
        }   
    });
    

1 个答案:

答案 0 :(得分:0)

如果要将数据对象传递给ddslick参数对象,则必须使用getJSON回调函数,因为您可以看到jQuery doc API

$.getJSON('ajax/test.json', function(data) {
  var window.myCachedData = data;
});

$('#myDropdown').ddslick({
    data: windows.myCachedData || {},
    width:300,
    selectText: "Select your preferred social network",
    imagePosition:"right",
    onSelected: function(selectedData){
        //callback function: do something with selectedData;
    }   
});