I want to combine two return values in my optionsText field, I thought this would be simple, but I am apparently wrong. I'm also using a value for the options field that is outside the normal view model. Here is the original:
<select style="width: 180px" data-bind="visible: false, value: fields.person, options: $root.extra.personList, optionsText: 'FirstName', optionsValue: 'LastName' }, select2: {}">
This works fine, displays the person's FirstName and sets the value as LastName.
This next piece throws an error:
<select style="width: 180px" data-bind="visible: false, value: fields.person, options: $root.extra.personList, optionsText: function (item) { return item.FirstName() + '-' + item.LastName() }, optionsValue: 'LastName', select2: {}">
Uncaught TypeError: Property 'FirstName' of object # is not a function
FirstName
andLastName
are observables? If you're not sure, try this:ko.unwrap(item.FirstName) + '-' + ko.unwrap(item.LastName)
– sroesko.computed
. – ach