You need to sign in to do that
Don't have an account?

OnChange event throws an error when trying to select the picklist Field.
I have a picklist which gives the below error when trying to select a value.

Component:
<lightning:select aura:id="Productreg" name="select" label="Gender" onchange="{!c.onSelectChange}">
<option value="">choose one...</option>
<option value="male">Male</option>
<option value="female">Female</option>
Controller:
onSelectChange: function (cmp, evt, helper) {
//alert(cmp.find('select').get('v.value') );
var genderVal = cmp.find('select').get('v.value');
cmp.set('v.genderVal',genderVal);
},
afterload: function (cmp, evt, helper) {
alert('new function test' );
},
handleCreateProductReg: function (cmp, evt, helper) {
var CreatePassableItem = component.get('c.CreatePassableItem');
$A.enqueueAction(CreatePassableItem);
console.log(CreatePassableItem);
var prodObj = cmp.get("v.ProductRegObj");
console.log(prodObj);
var genderVal = cmp.get("v.genderVal")?cmp.get("v.genderVal"):'';
prodObj.Gender__c = genderVal;
Component:
<lightning:select aura:id="Productreg" name="select" label="Gender" onchange="{!c.onSelectChange}">
<option value="">choose one...</option>
<option value="male">Male</option>
<option value="female">Female</option>
Controller:
onSelectChange: function (cmp, evt, helper) {
//alert(cmp.find('select').get('v.value') );
var genderVal = cmp.find('select').get('v.value');
cmp.set('v.genderVal',genderVal);
},
afterload: function (cmp, evt, helper) {
alert('new function test' );
},
handleCreateProductReg: function (cmp, evt, helper) {
var CreatePassableItem = component.get('c.CreatePassableItem');
$A.enqueueAction(CreatePassableItem);
console.log(CreatePassableItem);
var prodObj = cmp.get("v.ProductRegObj");
console.log(prodObj);
var genderVal = cmp.get("v.genderVal")?cmp.get("v.genderVal"):'';
prodObj.Gender__c = genderVal;
hi Aaqib,
you have used 'aura:id="Productreg"' but fetching <select> 'var genderVal = cmp.find('select').get('v.value');' in the code.
instead use var genderVal = cmp.find('Productreg').get('v.value');
After changing 'select' to 'Prodreg' it gives the following error.
[cmp.find(...).get is not a function]
Hi
You can use
event.getSource().get("v.value");
to get selected value