NOTE: This is from a Levels ReadyTheme. Remember, the code can't be easiliy mixed and matched with other ReadyThemes 
The button code:
The javascript:
Your mileage may vary.

The button code:
Code:
<mvt:if expr="l.settings:product:inv_level NE 'out' OR l.settings:attributemachine:product:inv_level NE 'out'"> <button id="js-add-to-cart" class="button button-block uppercase add-to-cart bg-green white bold">Add <span class="small-inline-block hide">to Cart</span></button> <mvt:else> <button id="js-add-to-cart" class="button button-block uppercase add-to-cart bg-green white bold" disabled>Sold Out</button> </mvt:if>
Code:
// ---- Update Button For "Out Of Stock" ---- // function outOfStock () { var button = $('#js-add-to-cart'); var invMsg = $('#js-inventory-message').html(); if (button.is(':disabled') === true) { if (invMsg === 'Please select a valid combination of attributes.') { button.addClass('bg-gray').html('Select One'); }else{ button.addClass('bg-gray').html('Sold Out'); } } else { button.removeClass('bg-gray').html('Add <span class="small-inline-block hide">to Cart</span>'); } } outOfStock(); MivaEvents.SubscribeToEvent('variant_changed', function () { outOfStock(); });
Comment