Anyway to shorten these for statements?
String building in code is typically messy, especially without a native String.Format() or sprintf()  in Javascript. Building HTML is the worst offender, too.

Other than using a templating engine, like ICanHaz.js (which this use case alone doesn't really justify), you could also build a helper function for creating option tags.

function buildOption(value, isSelected) {
    return "&lt;option value='"+value+"' "+(isSelected ? "selected" : "")+"&gt;"+value+"&lt;/option&gt;";
}


If you're building a lot of these drop-down options, it might makes things more readable:

for (var i = 0; i &lt; 12; i++) {
    var option = buildOption(i + year, i === 0);
    $('.card-expiry-year').append(option);
}


It's a good idea to avoid long lines/sections of code which have a simple purpose, but have to be read carefully to understand what they do (complicated regular expressions are a good example).

Extracting that functionality into a function avoids this, because the function signature is all someone would need to read to understand what it does.