
function dmLoad() {
// hide itemNameField
$(".product-itemname-container").hide()
const itemNameField = $(".product-itemname-container #txtValue");
const attributeFields = $("[id^=ddlProductAttributeList]")
// set event listener for each attribute field
attributeFields.on("change", function() {
// clear attributeName list and rebuild on each change
const attributeNames = [];
attributeFields.unbind().each((idx, attributeField) => {
const attributeFieldText = $(attributeField).children("option:selected").text()
// check if option is selected, if not, skip
if (attributeFieldText !== 'Select an Option')
attributeNames.push($(attributeField).children("option:selected").text())
})
// build the itemNameField string and subsitute it as the value
let itemName = ''
attributeNames.map((attributeName, idx) => {
const comma = idx === (attributeNames.length - 1) ? '' : ',';
const space = idx !== 0 ? ' ' : ''
itemName += `${space}${attributeName}${comma}`
})
itemNameField.val(itemName)
})
}
if ($(body).hasClass("product-template-PRODUCT-ID-HERE")) {
$(".product-itemname-container").hide()
const itemNameField = $(".product-itemname-container #txtValue");
const attributeFields = $("[id^=ddlProductAttributeList]")
// set event listener for each attribute field
attributeFields.on("change", function() {
// clear attributeName list and rebuild on each change
const attributeNames = [];
attributeFields.unbind().each((idx, attributeField) => {
const attributeFieldText = $(attributeField).children("option:selected").text()
// check if option is selected, if not, skip
if (attributeFieldText !== 'Select an Option')
attributeNames.push($(attributeField).children("option:selected").text())
})
// build the itemNameField string and subsitute it as the value
let itemName = ''
attributeNames.map((attributeName, idx) => {
const comma = idx === (attributeNames.length - 1) ? '' : ',';
const space = idx !== 0 ? ' ' : ''
itemName += `${space}${attributeName}${comma}`
})
itemNameField.val(itemName)
})
}
If you have any ideas you'd like to see us tackle email our support team at support@docketmanager.ca