我正在将数据添加到API中,并且我希望我的oj表显示该数据。如何刷新oracle-jet中的特定组件?
我正在使用oracle-jet v6.1.0开发一个应用程序,在这个应用程序中,我使用本地apis来获取和存储数据,并使用表格显示数据。我发送了POST请求,数据存储在数据库中,在回调函数中,我转到表页,但没有获得新行!
当我点击submit按钮时,函数如下:
self.submitopportunity = function() {
var dataObj = {
"projectName": self.custProject(),
"department": self.custDepartements(),
"type": self.srtVal(),
"budget": self.custBudget(),
"description": self.solutionVal(),
"closeDate": self.closeDate(),
"customer": self.nameVal(),
"product": self.productVal(),
"status": self.statusVal(),
"contact": self.contactVal(),
"favorite": false
};
console.info(dataObj);
$.ajax({
url: url + '/opportunity',
type: "POST",
data: JSON.stringify(dataObj),
contentType: 'application/json',
success: function (response) {
oj.Router.rootInstance.go("opportunities");
return true;
},
error: function(error){
console.log("Something went wrong", error);
}
})
};当我刷新页面时,会添加新的行。那么,如何同步或刷新oj-table组件呢?
发布于 2019-02-19 07:49:36
所有oracle JET组件都有“刷新”功能。只需执行以下操作:
document.getElementById('yourtableid').refresh();要在导航到表页后直接更新组件,您需要使用oj.Router的go方法returns a Promise这一事实。我们可以使用回调来刷新表。
success: function (response) {
oj.Router.rootInstance.go("opportunities").then(
function(result) {
if (result.hasChanged) {
document.getElementById('yourtableid').refresh();
}
},
function(error) {
console.log('Failed. ', error);
}
);
return true;
}https://stackoverflow.com/questions/54749703
复制相似问题