Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save drabbytux/d97dda76b524c7ad1ab1840daad408d2 to your computer and use it in GitHub Desktop.
Save drabbytux/d97dda76b524c7ad1ab1840daad408d2 to your computer and use it in GitHub Desktop.
Get custom information for product javascript for theme.js
jQuery(function($) {
$('form[action="/cart/add"]').submit(function() {
var formIsValid = true;
var message = "Please fill this out and you will be able to add the item to your cart.";
$(this).find('[name^="properties"]').filter('.required, [required="required"]').each(function() {
$(this).removeClass('error');
if (formIsValid && $(this).val() == '') {
formIsValid = false;
message = $(this).attr('data-error') || message;
$(this).addClass('error');
}
});
if (formIsValid){
return true;
}
else {
alert(message);
return false;
}
}).find('input, select, textarea').focus(function() {
$(this).removeClass('error');
});
});
@ajcsilva
Copy link

@glaxies @bjt1t2t3
Are you using one of the free Shopify themes? I'm using the "Simple" theme and was having a problem with this. Here's how I got it to work:

Change:
$('form[action="/cart/add"]').submit(function() {
to:
$('#AddToCart').on("click", function() {

There seems to be a name conflict with the .submit() method and the form's submit button name="submit" attribute. SO reference here.

@bjt1t2t3
Copy link

Thanks for your post @ajisilva. I am using this with the Simple theme and will try your change. Thanks again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment