Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-22-2024 12:41 AM
using below code I am able to create the dynamic content block working as interactive filter but need help/modification so below code can work for partial match/spell match string also, currently it is working with exact match
<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
<style>
/* You can add CSS styles here to customize the input field appearance */
</style>
<script>
var my_dashboardMessageHandler = new DashboardMessageHandler("cmdb_ci_filter");
function publishFilter(searchTerm) {
var filter_message = {};
filter_message.id = "cmdb_ci_filter";
filter_message.table = "sn_vul_vulnerable_item";
if (searchTerm == "") {
clearFilter();
} else {
// This filter searches for an exact match in the field
filter_message.filter = "cmdb_ci.u_ci_link.asset.ref_u_alm_service.u_project_code.u_ciso.u_ciso_org_2=" + searchTerm;
}
SNC.canvas.interactiveFilters.setDefaultValue({
id: filter_message.id,
filters: [filter_message]
}, false);
my_dashboardMessageHandler.publishFilter(filter_message.table, filter_message.filter);
}
function clearFilter() {
var filter_message = {};
filter_message.id = "cmdb_ci_filter";
filter_message.table = "sn_vul_vulnerable_item";
filter_message.filter = "";
SNC.canvas.interactiveFilters.setDefaultValue({
id: filter_message.id,
filters: [filter_message]
}, false);
my_dashboardMessageHandler.removeFilter();
}
</script>
<input id="searchTerm" type="text" class="form-control" value="" onchange="publishFilter(this.value);"></input>
</j:jelly>
Solved! Go to Solution.
1 ACCEPTED SOLUTION
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-22-2024 01:10 AM
Hi @RANSINGH1 ,
Try this :
<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
<style>
/* You can add CSS styles here to customize the input field appearance */
</style>
<script>
var my_dashboardMessageHandler = new DashboardMessageHandler("cmdb_ci_filter");
function publishFilter(searchTerm) {
var filter_message = {};
filter_message.id = "cmdb_ci_filter";
filter_message.table = "sn_vul_vulnerable_item";
if (searchTerm == "") {
clearFilter();
} else {
// This filter searche for the partial match in the field....
filter_message.filter = "cmdb_ci.u_ci_link.asset.ref_u_alm_service.u_project_code.u_ciso.u_ciso_org_2LIKE" + searchTerm;
}
SNC.canvas.interactiveFilters.setDefaultValue({
id: filter_message.id,
filters: [filter_message]
}, false);
my_dashboardMessageHandler.publishFilter(filter_message.table, filter_message.filter);
}
function clearFilter() {
var filter_message = {};
filter_message.id = "cmdb_ci_filter";
filter_message.table = "sn_vul_vulnerable_item";
filter_message.filter = "";
SNC.canvas.interactiveFilters.setDefaultValue({
id: filter_message.id,
filters: [filter_message]
}, false);
my_dashboardMessageHandler.removeFilter();
}
</script>
<input id="searchTerm" type="text" class="form-control" value="" onchange="publishFilter(this.value);"></input>
</j:jelly>
☑️ Please mark responses as HELPFUL or ACCEPT SOLUTION to assist future users in finding the right solution....
2 REPLIES 2
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-22-2024 01:10 AM
Hi @RANSINGH1 ,
Try this :
<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
<style>
/* You can add CSS styles here to customize the input field appearance */
</style>
<script>
var my_dashboardMessageHandler = new DashboardMessageHandler("cmdb_ci_filter");
function publishFilter(searchTerm) {
var filter_message = {};
filter_message.id = "cmdb_ci_filter";
filter_message.table = "sn_vul_vulnerable_item";
if (searchTerm == "") {
clearFilter();
} else {
// This filter searche for the partial match in the field....
filter_message.filter = "cmdb_ci.u_ci_link.asset.ref_u_alm_service.u_project_code.u_ciso.u_ciso_org_2LIKE" + searchTerm;
}
SNC.canvas.interactiveFilters.setDefaultValue({
id: filter_message.id,
filters: [filter_message]
}, false);
my_dashboardMessageHandler.publishFilter(filter_message.table, filter_message.filter);
}
function clearFilter() {
var filter_message = {};
filter_message.id = "cmdb_ci_filter";
filter_message.table = "sn_vul_vulnerable_item";
filter_message.filter = "";
SNC.canvas.interactiveFilters.setDefaultValue({
id: filter_message.id,
filters: [filter_message]
}, false);
my_dashboardMessageHandler.removeFilter();
}
</script>
<input id="searchTerm" type="text" class="form-control" value="" onchange="publishFilter(this.value);"></input>
</j:jelly>
☑️ Please mark responses as HELPFUL or ACCEPT SOLUTION to assist future users in finding the right solution....
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-22-2024 01:27 AM
Thank you so much for your quick reply, it is working.