まあ、それは私の元の質問に実際には答えませんが、これで私の問題は解決します。Repeater に他のデータをリロードしたい場合は、実際には別のデータを使用して新しいものを作成しますdataSource
。
サーバーへの新しいAjaxリクエストは次のようになります
$.ajax({
url: '...some url...',
type: 'post',
data: JSON.stringify(payload),
dataType: 'json',
contentType: 'application/json; charset=utf-8',
success: function (data) {
var dataSource = new MyDataSource(data, columns);
// the repeater already exists
if ($('#myRepeater .repeater-canvas').contents().length !== 0) {
var enclosingDiv = $('#myRepeater').parent();
var markup = $('#myRepeater').repeater('destroy');
enclosingDiv.html(markup);
}
// creating the repeater normally
$('#myRepeater').repeater({
dataSource: dataSource
});
}
});
誰かが に興味を持っている場合、これは実際には単純な関数であり、Fuel UX リピーターが期待する関数にMyDataSource
データを入れることができます。dataSource
var MyDataSource = new function (data, columns) {
return function (options, callback) {
...
}
}