//Sample code
var ui = {
view: "form",
elements: [
{
view: "text",
name: "name",
label: "Name",
labelPosition: "top"
},
{
view: "multicombo",
name: "code",
label: "Code",
options: [],
labelPosition: "top",
tagMode: false
},
{
view: "multiselect",
name: "status",
label: "Status",
options: ["Draft", "Waiting", "Transit", "Available", "Done"],
labelPosition: "top"
},
{},
{
cols: [
{
view: "button", value: "Filter", click: function () {
this.$scope.renderTable();
}
},
{
view: "button", value: "Clear", type: "danger", click: function () {
this.$scope.form_filter.clear();
this.$scope.renderTable();
}
}
]
}
]
}
var dtb = {
view: "datatable",
columns: [
{
id: "name",
header: "Name",
},
{
id: "code",
header: "Code",
},
{
id: "status",
header: "Status",
},
],
data: []
}
export default class ViewData extends JetView {
config(){
return {
rows[
ui,
dtb
]
}
}
init(view, url){
this.form_filter = view.queryView({view: "form"});
this.datatable = view.queryView({view: "datatable"});
}
ready(){
this.renderTable();
}
renderTable(){
this.datatable.clearAll();
this.datatable.load("url?" + jQuery.param(this.form_filter.getValues(), true), {
success: (text, xml, ajax) => {
this.datatable.resize();
}
});
}
}
- this.$scope.form_filter.clear();
- this.$scope.renderTable();
Or how to use like this?