【发布时间】:2014-02-23 02:30:44
【问题描述】:
我正在尝试让我的 ListView 与 Pull To Refresh 一起使用。不过,我无法刷新列表视图。
基本上,当用户触发拉动刷新时,它应该替换列表视图的全部内容。
以下是我处理列表视图和下拉刷新的方式:
function handle_geolocation_query( position )
{
$.when( Event.getEventsNearby( position.coords.latitude, position.coords.longitude, radius, limit, offset, key ) ).done( function( response )
{
var dataToBeCached = new Array();
//In order not to cache the same results twice
var previousContent;
if( response.containsResults )
{
var results = response.results;
//Remove previous markers
Map.clearMarkers();
// Add Markers on the map
Map.setMarkerPosition( position.coords.latitude, position.coords.longitude, "grey" );
for ( var i=0; i<results.length; i++ )
{
Map.setMarkerPosition( results[i].lat, results[i].lng, "green");
results[i]["index"] = i;
}
setItem("events", JSON.stringify( results ), 1);
var template = Handlebars.compile( $( '#eventListTemplate' ).html() );
$("#list-container").kendoMobileListView({
template : template,
dataSource: kendo.data.DataSource.create(results),
fixedHeaders: false,
pullToRefresh: true,
pullParameters: function(item) {
console.log("pull");
//Here, another AJAX call to get the new results
$.when( Event.getEventsNearby( position.coords.latitude, position.coords.longitude, radius, limit, offset, key ) ).done( function( response )
{
console.log("when");
//I can see I'm getting my results properly here.
console.log(response.results);
//Doesn't work ...
return response.results;
});
}
});
$( document ).trigger( "wallReady" );
//Retrieve the different user conversations:
updateListOfChats();
}
} );
};
我应该在 pullParameters 函数中添加什么来使其工作?谢谢。
【问题讨论】:
标签: javascript kendo-ui kendo-mobile