我担心我的条件格式不正确。
这看起来对你好吗?
function validateCoupon( form ){
if (form.textCoupon.value.length ){
if (form.textCoupon.value.toLowerCase() == "Item01") {
_gaq.push(['_trackEvent', 'Coupon', 'Activated', 'Item01']);
}
if (form.textCoupon.value.toLowerCase() == "Item02") {
_gaq.push(['_trackEvent', 'Coupon', 'Activated', 'Item02']);
}
$.get( "/include/checkCoupon.php", { coupon: form.textCoupon.value }, validateShipping );
}
else {
form.textCoupon.style.border = '';
validateShipping( "yes" );
}
return false;
}
答案 0 :(得分:1)
好吧,某些内容似乎是一种冗余:form.textCoupon.value
可以是 Item01 或 Item02 。如果它是一个它不可能是另一个,所以我建议你一个开关声明。
另一个问题是,如果您拨打.toLowerCase()
,则永远不会返回 Item01 ,但 item01 ,字符串相等性区分大小写。可以将此函数调用到条件的两个部分,也可以不使用它。
答案 1 :(得分:0)
源代码的格式化与JavaScript运行时无关。这只是个人品味的问题。
答案 2 :(得分:0)
避免缩进标签:它们在所有平台上都不会以相同的方式呈现。
答案 3 :(得分:0)
如果这是我的代码,那就是我写的方式:
var validateCoupon = function (form) {
var textCoupon = form.textCoupon,
value = textCoupon.value,
track = function (value) {
_gaq.push(['_trackEvent', 'Coupon', 'Activated', value]);
};
if (value.length) {
if (value === 'Item01' || value === 'Item02') {
track(value);
}
$.get('/include/checkCoupon.php', { coupon: value }, validateShipping);
} else {
textCoupon.style.border = '';
validateShipping('yes');
}
return false;
};