function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Andrew Aldis 15Andrew Aldis 15 

Lighting Table call onlick javascript when a cell is clicked

I created a HTML table in a lighting component, that needs specific styling of the text within the defferent rows.  I also need to add onclick javascript to the row or cells that will call a method.  I am using aura:iteration and need to get a external Id associated with every  row, the external Id field is title comp_fund_code.  Every thing I try only results in a event.getSource() is not a function error message.  Does anyone know how I can accomplish this.  My cod eis below.

<table class="table">
<aura:iteration items="{!v.salesBreakdown}" var="sb">
<tr class="row" onclick="{!c.openModal}" aura:id="{!sb.comp_fund_code}" name="{!sb.comp_fund_code}">
<td class="fund" aura:id="{!sb.comp_fund_code}" name="{!sb.comp_fund_code}">
{!sb.fund_name}
</td>
<td class="sales" aura:id="{!sb.comp_fund_code}" name="{!sb.comp_fund_code}">
<lightning:formattedNumber value="{!sb.sales}" style="currency" currencyCode="USD" />
</td>
</tr>
</aura:iteration>
</table>
openModal: function (component, event, helper) {
console.log('open modal')
var fundCode = event.getSource().getLocalId();
component.set('v.fundCode',fundCode);
component.set('v.showFundDetails', true);
},
 
Raj VakatiRaj Vakati
try like this 
<aura:iteration items="{!v.salesBreakdown}" var="sb">
<tr class="row" onclick="{!c.openModal}" id="{!sb.comp_fund_code}" name="{!sb.comp_fund_code}" >
<td class="fund" aura:id="{!sb.comp_fund_code}" name="{!sb.comp_fund_code}">
{!sb.fund_name}
</td>
<td class="sales" aura:id="{!sb.comp_fund_code}" name="{!sb.comp_fund_code}">
<lightning:formattedNumber value="{!sb.sales}" style="currency" currencyCode="USD" />
</td>
</tr>
</aura:iteration>

console.log('--->>>'+event.target.id);
 
openModal: function (component, event, helper) {
console.log('open modal')
var fundCode = event.target.id;
component.set('v.fundCode',fundCode);
component.set('v.showFundDetails', true);
},

 
Andrew Aldis 15Andrew Aldis 15
No that does not work,  Just changing the javascript assigns a null value to the fundCode variable, and the <b> and </b> within the html prevents it from pushing into SF at all.  Anyone else have some suggestions?
Raj VakatiRaj Vakati
Can you give me complete code 
Andrew Aldis 15Andrew Aldis 15
Sure.

<aura:component controller="SalesAndAssets_CTRL" implements="flexipage:availableForAllPageTypes,
force:appHostable,lightning:actionOverride,force:hasRecordId,force:hasSObjectName">
<ltng:require scripts="{!join(',',$Resource.ChartJs, $Resource.chartjsplugindatalabels)}" afterScriptsLoaded="{!c.init}"
/>
<aura:attribute name="parentId" type="id" />
<aura:attribute name="heartbeatId" type='string' />
<aura:attribute name="graphData" type="list" />
<aura:attribute name="graphLabels" type="list" />
<aura:attribute name="aum" type="Integer" />
<aura:attribute name="asOfAum" type="string" />
<aura:attribute name="asOfGraph" type="string" />
<aura:attribute name="salesBreakdownRange" type="string" />
<aura:attribute name="salesAndAssets" type="list" />
<aura:attribute name="retailTotals" type="list" />
<aura:attribute name="dcioTotals" type="list" />
<aura:attribute name="recordkeeperTotals" type="list" />
<aura:attribute name="retailSalesYst" type="list" />
<aura:attribute name="retailRedemYst" type="list" />
<aura:attribute name="retailSalesYtd" type="list" />
<aura:attribute name="retailRedemYtd" type="list" />
<aura:attribute name="retailSalesPy" type="list" />
<aura:attribute name="retailRedemPy" type="list" />
<aura:attribute name="retailSales2Py" type="list" />
<aura:attribute name="retailRedem2Py" type="list" />
<aura:attribute name="salesBreakdown" type="list" />
<aura:attribute name="redemBreakdown" type="list" />
<aura:attribute name="assetsBreakdown" type="list" />
<aura:attribute name="recordkeeperBreakdown" type="list" />
<aura:attribute name="retailSalesTotal" type="double" />
<aura:attribute name="retailRedemTotal" type="double" />
<aura:attribute name="dcioSalesTotal" type="double" />
<aura:attribute name="dcioRedemTotal" type="double" />
<aura:attribute name="assets" type="list" />
<aura:attribute name="spinner" type="boolean" default="false" />
<aura:handler event="aura:waiting" action="{!c.spinnerOn}" />
<aura:handler event="aura:doneWaiting" action="{!c.spinnerOff}" />
<aura:attribute name="gridAlignment" type="string" />
<aura:attribute name="gridColumn1" type="string" />
<aura:attribute name="gridColumn2" type="string" />
<aura:attribute name="device" type="string" />
<aura:attribute name="activeTimeFrame" type="string" />
<aura:attribute name="activeBreakdown" type="string" />
<aura:attribute name="bdTimeFrameTitle" type="string" default="YEST" />
<aura:attribute name="bdFundType" type="string" default="Retail" />
<aura:attribute name="aumValue" type="string" />
<aura:attribute name="fundCode" type="string" />
<aura:attribute name="showFundDetails" type="boolean" default="false" />

<!--<aura:handler name="init" value="{!this}" action="{!c.init}" />-->
<aura:if isTrue="{!v.spinner}">
<div class="exampleHolder">
<lightning:spinner alternativeText="Loading" size="large" />
</div>
</aura:if>
<div class="body">
<div class="buttonGroup1">
<ui:button label="YEST" aura:id="previous_day" class="activeButton1" press="{!c.timeFrameSelect}" />
<ui:button label="MTD" aura:id="month_to_date" class="button1" press="{!c.timeFrameSelect}" />
<ui:button label="YTD" aura:id="year_to_date" class="button1" press="{!c.timeFrameSelect}" />
<ui:button label="PY" aura:id="prior_year" class="button1" press="{!c.timeFrameSelect}" />
<ui:button label="2YR" aura:id="two_years_prior" class="button1" press="{!c.timeFrameSelect}" />
</div>
<div class="header">
<p>
Directional AUM:
<lightning:formattedNumber value="{!v.aum}" style="currency" currencyCode="USD" class="{!v.aumValue}" />
</p>
</div>
<div class="{!v.gridAlignment}">
<div class="{!v.gridColumn1}">
<span>
<div class="slds-grid slds-gutters " style="height:50px; padding-top:20px">
<div class="slds-col slds-order_1 slds-size_1-of-2">Retail</div>
<div class="slds-col slds-order_2 slds-size_1-of-2" style="font-size: 0.75rem; color: #515151;">as of {!v.asOfGraph}</div>
</div>
<div class=" " >
<div class="slds-grid slds-gutters " style="height:70px; padding-top:20px">
<div class="slds-col slds-order_1 slds-size_1-of-2" style="font-size:.85rem; ">
<span class="icon">
<lightning:icon iconName="standard:opportunity" class="salesIcon" alternativeText="Approved" />
</span>
<span class="text">Sales
<br/>
<lightning:formattedNumber value="{!' '+v.retailSalesTotal}" style="currency" currencyCode="USD" class="aumPositive" />
</span>
</div>
<div class="slds-col slds-order_2 slds-size_1-of-2" style="font-size:.75rem; ">
<span class="icon">
<lightning:icon iconName="standard:lightning_component" class="redemIcon" alternativeText="Approved" />
</span>
<span class="text">Redemptions
<br/>
<lightning:formattedNumber value="{!' '+v.retailRedemTotal}" style="currency" currencyCode="USD" class="aumNegative" />
</span>
</div>
</div>
<div class="graph">
<canvas aura:id="barChart" id="barChart" class="barChart chart" />
</div>
</div>
</span>
</div>
<div class="{!v.gridColumn2}">
<span>
<div class="slds-grid slds-gutters " style="height:50px; padding-top:20px">
<div class="slds-col slds-order_1 slds-size_1-of-2">DCIO</div>
<div class=" slds-col slds-order_2 slds-size_1-of-2" style="font-size: 0.75rem; color: #515151;">as of {!v.asOfGraph}</div>
</div>
<div class=" ">
<div class="slds-grid slds-gutters " style="height:70px; padding-top:20px">
<div class="slds-col slds-order_1 slds-size_1-of-2" style="font-size:.75rem;">
<span class="icon">
<lightning:icon iconName="standard:opportunity" class="salesIcon" alternativeText="Approved" />
</span>
<span class="text">Sales
<br/>
<lightning:formattedNumber value="{!' '+v.dcioSalesTotal}" style="currency" currencyCode="USD" class="aumPositive" />
</span>
</div>
<div class="slds-col slds-order_2 slds-size_1-of-2" style="font-size:.75rem;">
<span class="icon">
<lightning:icon iconName="standard:lightning_component" class="redemIcon" alternativeText="Approved" />
</span>
<span class="text">Redemptions
<br/>
<lightning:formattedNumber value="{!' '+v.dcioRedemTotal}" style="currency" currencyCode="USD" class="aumNegative" />
</span>
</div>
</div>
<div class="graph">
<canvas aura:id="dcioChart" id="dcioChart" class="barChart chart" />
</div>
</div>
</span>
</div>
</div>
<div class="buttonGroup2" style="padding-left:15px; height:50px; padding-top:20px">
<ui:button label="Retail" class="activeButton2" press="{!c.breakdownSelect}" aura:id="composite_fund_breakdown.sales_and_redemptions."
/>
<ui:button label="DCIO" class="button2" press="{!c.breakdownSelect}" aura:id="retirement_breakdown.dcio_composite_fund_breakdown.sales_and_redemptions."
/>
<ui:button label="Recordkeeper" class="button2" press="{!c.breakdownSelect}" aura:id="retirement_breakdown.dcio_composite_fund_breakdown.top_platforms."
/>
<ui:button label="Assets" class="button2" press="{!c.breakdownSelect}" aura:id="composite_fund_breakdown.assets_under_management.assets_breakdown"
/>
</div>
<aura:if isTrue="{!v.bdFundType == 'DCIO' || v.bdFundType == 'Retail'}">
<div class="{!v.gridAlignment}">
<div class="{!v.gridColumn1}">
<div class="infoHeader">{!v.bdTimeFrameTitle+' '+v.bdFundType+' Fund Sales'}</div>
<table class="table">
<aura:iteration items="{!v.salesBreakdown}" var="sb">
<tr class="row" onclick="{!c.openModal}" id="{!sb.comp_fund_code}" value="{!sb.comp_fund_code}" >
<td class="fund" >
{!sb.fund_name}
</td>
<td class="sales">
<lightning:formattedNumber value="{!sb.sales}" style="currency" currencyCode="USD" />
</td>
</tr>
</aura:iteration>
</table>
</div>
<div class="{!v.gridColumn2}">
<div class="infoHeader">{!v.bdTimeFrameTitle+' '+v.bdFundType+' Fund Redemptions'}</div>
<table class="table">
<aura:iteration items="{!v.redemBreakdown}" var="rb">
<tr class="row" onclick="{!c.openModal}" id="{!rb.comp_fund_code}" >
<td class="fund">
{!rb.fund_name}
</td>
<td class="redems">
<lightning:formattedNumber value="{!rb.redemptions}" style="currency" currencyCode="USD" />
</td>
</tr>
</aura:iteration>
</table>
</div>
</div>
</aura:if>
<aura:if isTrue="{!v.bdFundType == 'Assets'}">
<div class="assetBreakdown">
<div class="infoHeader" style="padding-left:12px">DIRECTIONAL ASSETS BY FUND (current, trackable holdings)</div>
<table class="table">
<aura:iteration items="{!v.assetsBreakdown}" var="ab">
<tr class="row" onclick="{!c.openModal}" aura:id="{!ab.comp_fund_code}" >
<td class="fund">
{!ab.fund_name}
</td>
<td class="sales">
<lightning:formattedNumber value="{!ab.assets}" style="currency" currencyCode="USD" />
</td>
</tr>
</aura:iteration>
</table>
</div>
</aura:if>
<aura:if isTrue="{!v.bdFundType == 'Recordkeeper'}">
<div class="{!v.gridAlignment}">
<div class="{!v.gridColumn1}">
<div class="infoHeader">{!v.bdTimeFrameTitle+' '+v.bdFundType+' Fund Sales'}</div>
<table class="table">
<aura:iteration items="{!v.recordkeeperBreakdown}" var="rkb">
<tr class="row" onclick="{!c.openModal}" aura:id="{!rkb.fundCode}" >
<td class="fund">
{!rkb.platform_name}
</td>
<td class="sales">
<lightning:formattedNumber value="{!rkb.platform_sales}" style="currency" currencyCode="USD" />
</td>
</tr>
</aura:iteration>
</table>
</div>
<div class="{!v.gridColumn2}">
<div class="infoHeader">{!v.bdTimeFrameTitle+' '+v.bdFundType+' Fund Redemptions'}</div>
<table class="table">
<aura:iteration items="{!v.recordkeeperBreakdown}" var="rkb">
<tr class="row" onclick="{!c.openModal}" aura:id="{!rkb.fundCode}" >
<td class="fund">
{!rkb.platform_name}
</td>
<td class="redems">
<lightning:formattedNumber value="{!rkb.platform_redemptions}" style="currency" currencyCode="USD" />
</td>
</tr>
</aura:iteration>
</table>
</div>
</div>
</aura:if>
</div>
<!--FUND DETAILS MODAL-->
<aura:if isTrue="{!v.isOpen}">
<!--###### MODAL BOX Start######-->
<section role="dialog" tabindex="-1" aria-labelledby="modal-heading-01" aria-modal="true" aria-describedby="modal-content-id-1" class="slds-modal slds-fade-in-open">
<div class="slds-modal__container">
<!-- ###### MODAL BOX HEADER Start ######-->
<header class="slds-modal__header">
<lightning:buttonIcon iconName="utility:close"
onclick="{! c.closeModel }"
alternativeText="close"
variant="bare-inverse"
class="slds-modal__close"/>
<h2 id="modal-heading-01" class="slds-text-heading_medium slds-hyphenate">About Sfdcmonkey.com</h2>
</header>
<!--###### MODAL BOX BODY Part Start######-->
<div class="slds-modal__content slds-p-around_medium" id="modal-content-id-1">
<c:Contact_AdvisorFundDetails fundCode="{!v.fundCode}" heartbeatId="{!v.heartbeatId}" />
</div>
<!--###### MODAL BOX FOOTER Part Start ######-->
<footer class="slds-modal__footer">
<lightning:button variant="neutral"
label="Previous"
onclick=""/>
<lightning:button variant="neutral"
label="Next"
onclick=""/>
</footer>
</div>
</section>
<div class="slds-backdrop slds-backdrop_open"></div>
<!--###### MODAL BOX Part END Here ######-->
</aura:if>
</aura:component>

Class
({
init: function (component, event, helper) {
var heartbeatId = component.get("v.heartbeatId");
var tab = 'retail';
var canvas = '';
//remove below code
if (heartbeatId == null || heartbeatId == '') {
heartbeatId = '00000000000022052882';
}
var action = component.get("c.getAdvisorSalesAssets");
action.setParams({
"heartbeatId": heartbeatId
});
action.setCallback(this, function (result) {
var device = $A.get("$Browser.formFactor");
component.set('v.device', device);
if (device == "TABLET") {
component.set('v.gridAlignment', 'slds-grid slds-gutters slds-wrap');
component.set('v.gridColumn1', 'slds-col slds-order_1 slds-size_6-of-12');
component.set('v.gridColumn2', 'slds-col slds-order_2 slds-size_6-of-12');
} else {
component.set('v.gridAlignment', 'slds-grid slds-gutters slds-grid_vertical');
component.set('v.gridColumn1', 'slds-col slds-order_1');
component.set('v.gridColumn2', 'slds-col slds-order_2');
}
component.set('v.activeTimeFrame','previous_day');
component.set('v.activeBreakdown', 'composite_fund_breakdown.sales_and_redemptions.');
var graphData = [];
var salesData = [];
var redemptionData = [];
var salesAndAssets = JSON.parse(result.getReturnValue());
console.log('salesAndAssets');
console.log(salesAndAssets);
component.set('v.salesAndAssets',salesAndAssets);
var aum = salesAndAssets.composite_fund_breakdown.assets_under_management.total_assets;
if(aum >= 0){
component.set('v.aumValue', 'aumPositive');
}else{
component.set('v.aumValue', 'aumNegative');
}
var retailTotals = salesAndAssets.composite_fund_breakdown.sales_and_redemptions;
var dcioTotals = salesAndAssets.retirement_breakdown.dcio_composite_fund_breakdown.sales_and_redemptions;
var recordkeeperTotals = salesAndAssets.retirement_breakdown.dcio_composite_fund_breakdown.top_platforms;
var assets = salesAndAssets.composite_fund_breakdown.assets_under_management.assets_breakdown;
var graphLabels = ["YEST", "YTD", "PY", "2PY"];
var retailSalesYst = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.previous_day.sales_breakdown;
if (salesAndAssets.composite_fund_breakdown.sales_and_redemptions.previous_day.sales_breakdown.length > 0) {
component.set('v.salesBreakdown', salesAndAssets.composite_fund_breakdown.sales_and_redemptions.previous_day.sales_breakdown);
}
var retailRedemYst = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.previous_day.redemptions_breakdown;
if (salesAndAssets.composite_fund_breakdown.sales_and_redemptions.previous_day.redemptions_breakdown.length > 0) {
component.set('v.redemBreakdown', salesAndAssets.composite_fund_breakdown.sales_and_redemptions.previous_day.redemptions_breakdown);
}
var retailSalesYtd = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.year_to_date.sales_breakdown;
var retailRedemYtd = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.year_to_date.redemptions_breakdown;
var retailSalesPy = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.prior_year.sales_breakdown;
var retailRedemPy = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.prior_year.redemptions_breakdown;
var retailSales2Py = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.two_years_prior.sales_breakdown;
var retailRedem2Py = salesAndAssets.composite_fund_breakdown.sales_and_redemptions.two_years_prior.redemptions_breakdown;
component.set('v.aum', aum);
component.set('v.asOfAum', salesAndAssets.aum_eff_date);
component.set('v.asOfGraph', salesAndAssets.sales_and_redemptions.year_to_date.as_of_date);
component.set('v.totalSales', salesAndAssets.sales_and_redemptions.year_to_date.sales);
component.set('v.totalRedemptions', salesAndAssets.sales_and_redemptions.year_to_date.redemptions);
component.set('v.retailTotals', retailTotals);
component.set('v.retailSalesTotal', retailTotals.previous_day.sales_total);
component.set('v.retailRedemTotal', retailTotals.previous_day.redemptions_total);
component.set('v.dcioTotals', dcioTotals);
component.set('v.dcioSalesTotal', 0);
component.set('v.dcioRedemTotal', 0);
component.set('v.recordkeeperTotals', recordkeeperTotals);
component.set('v.assets', assets);
component.set('v.graphLabels', graphLabels);
component.set('v.retailSalesYst', retailSalesYst);
component.set('v.retailRedemYst', retailRedemYst);
component.set('v.retailSalesYtd', retailSalesYtd);
component.set('v.retailRedemYtd', retailRedemYtd);
component.set('v.retailSalesPy', retailSalesPy);
component.set('v.retailRedemPy', retailRedemPy);
component.set('v.retailSales2Py', retailSales2Py);
component.set('v.retailRedem2Py', retailRedem2Py);
salesData.push(retailTotals.previous_day.sales_total);
salesData.push(retailTotals.year_to_date.sales_total);
salesData.push(retailTotals.prior_year.sales_total);
salesData.push(retailTotals.two_years_prior.sales_total);
redemptionData.push(retailTotals.previous_day.redemptions_total * -1);
redemptionData.push(retailTotals.year_to_date.redemptions_total * -1);
redemptionData.push(retailTotals.prior_year.redemptions_total * -1);
redemptionData.push(retailTotals.two_years_prior.redemptions_total * -1);
helper.createVerticalGraph(component, event, 'retail', 'YEST' );
helper.createVerticalGraph(component, event, 'dcio', 'MTD');
});
$A.enqueueAction(action);
},
timeFrameSelect: function (component, event, helper) {
var timeFrame = event.getSource().getLocalId();
var buttonName = event.getSource().get("v.label");
var salesBackground = [];
var redemBackground = [];
if(buttonName == 'YEST'){
helper.createVerticalGraph(component, event, 'retail',buttonName );
helper.createVerticalGraph(component, event, 'dcio',buttonName );
}else if(buttonName == 'MTD'){
helper.createVerticalGraph(component, event, 'retail',buttonName );
helper.createVerticalGraph(component, event, 'dcio',buttonName );
}else if(buttonName == 'YTD'){
helper.createVerticalGraph(component, event, 'retail',buttonName );
helper.createVerticalGraph(component, event, 'dcio',buttonName );
}else if(buttonName == 'PY'){
helper.createVerticalGraph(component, event, 'retail',buttonName );
helper.createVerticalGraph(component, event, 'dcio',buttonName );
}else if(buttonName == '2YR'){
helper.createVerticalGraph(component, event, 'retail',buttonName );
helper.createVerticalGraph(component, event, 'dcio',buttonName );
}
helper.changeButtons(component, event, buttonName);
component.set('v.bdTimeFrameTitle', buttonName);
component.set('v.activeTimeFrame', timeFrame);
var breakdown = component.get('v.bdFundType');
var path = component.get('v.activeBreakdown');
var retailSales = 'v.retailTotals[0].'+timeFrame+'.sales_total';
var retailRedem = 'v.retailTotals[0].'+timeFrame+'.redemptions_total';
var dcioSales = 'v.dcioTotals[0].'+timeFrame+'.sales_total';
var dcioRedem = 'v.dcioTotals[0].'+timeFrame+'.redemptions_total';
helper.getSalesTotals(component, event, retailSales, retailRedem, dcioSales, dcioRedem);
if(breakdown == 'DCIO' || breakdown == 'Retail'){
var salesBreakdown = 'v.salesAndAssets[0].'+path+timeFrame+'.sales_breakdown';
var redemBreakdown = 'v.salesAndAssets[0].'+path+timeFrame+'.redemptions_breakdown';
helper.getSalesRedems(component, event, salesBreakdown, redemBreakdown);
}else if(breakdown == 'Recordkeeper'){
var platformsBreakdown = 'v.salesAndAssets[0].'+path+timeFrame+'.platforms_breakdown';
helper.getRecordkeeper(component, event, platformsBreakdown);
}else{
var assetBreakdown = 'v.salesAndAssets[0].composite_fund_breakdown.assets_under_management.assets_breakdown';
helper.getAssetBreakdown(component, event, assetBreakdown);
}
},
breakdownSelect: function (component, event, helper) {
var buttonName = event.getSource().get("v.label");
helper.changeButtons(component, event, buttonName);
var path = event.getSource().getLocalId();
var timeFrame = component.get('v.activeTimeFrame');
component.set('v.activeBreakdown',path);
component.set('v.bdFundType', buttonName);
if(buttonName == 'Retail'){
var salesBreakdown = 'v.salesAndAssets[0].'+path+timeFrame+'.sales_breakdown';
var redemBreakdown = 'v.salesAndAssets[0].'+path+timeFrame+'.redemptions_breakdown';
helper.getSalesRedems(component, event, salesBreakdown, redemBreakdown);
}else if(buttonName == 'DCIO'){
var salesBreakdown = 'v.salesAndAssets[0].'+path+timeFrame+'.sales_breakdown';
var redemBreakdown = 'v.salesAndAssets[0].'+path+timeFrame+'.redemptions_breakdown';
helper.getSalesRedems(component, event, salesBreakdown, redemBreakdown);
}else if(buttonName == 'Recordkeeper'){
var Recordkeeper = 'v.salesAndAssets[0].'+path+timeFrame+'.platforms_breakdown';
helper.getRecordkeeper(component, event, Recordkeeper);
}else{
var assets = 'v.salesAndAssets[0].composite_fund_breakdown.assets_under_management.assets_breakdown';
helper.getAssetBreakdown(component, event, assets);
}
},
spinnerOn: function (component, event, helper) {
component.set('v.spinner', true);
},
spinnerOff: function (component, event, helper) {
component.set('v.spinner', false);
},
openModal: function (component, event, helper) {
console.log('open modal')
console.log(component);
var rectarget = event.currentTarget;
var fundCode = rectarget.getAttribute("id");
var fundCodeClass = rectarget.getAttribute("class");
console.log('fund code is '+fundCode);
console.log('fundClass code is '+fundCodeClass);
component.set('v.fundCode',fundCode);
component.set('v.showFundDetails', true);
},
closeModal: function (component, event, helper) {
console.log('close modal');
component.set('v.fundCode','');
component.set('v.showFundDetails', false);
},

})
Andrew Aldis 15Andrew Aldis 15
Got it.  

This works

openModal: function (component, event, helper) {
console.log('open modal')
console.log(component);
var rectarget = event.currentTarget;
var fundCode = rectarget.getAttribute("id");
console.log('fund code is '+fundCode);
console.log('fundClass code is '+fundCodeClass);
component.set('v.fundCode',fundCode);
component.set('v.showFundDetails', true);
},