前台商品条码效验算法
EAN效验规则 EAN的内容从右到左的顺序编号:N13、N12、N11、N10、N9、N8、N7、N6、N5、N4、N3、N2、N1,其中N1是准备要求的校验位: 1、C1=(N2+N4+N6+N8+N10+N12)*3; 2、C2=N3+N5+N7+N9+N11+N13; 3、将C1与C2相加,取其个位数,设为C3; 4、校验位N1=10-C3
$("#barcode",_currentModal).on(change,function () {
var a=0;
var b=0;
var first=0;
var barcode=$("#barcode",_currentModal).val();
var length=barcode.length
if (length!==13){
$("#prompt",_currentModal).html("输入有误,请重新输入").css("color","red");
$("#barcode",_currentModal).val();
return;
}
for (var i=0;i<length;i++){
if(i%2!==0){
var x=barcode.charAt(i)-0;
a+=x;
}else {
var y=barcode.charAt(i)-0;
b+=y;
}
}
first=barcode.charAt(0)-0;
var c=(a*3+(b-first))+"";
var d=10-(c.charAt(c.length-1)-0);
if (first==d){
$("#prompt",_currentModal).html("正确").css("color","green");
}else {
$("#prompt",_currentModal).html("输入有误,请重新输入").css("color","red");
$("#barcode",_currentModal).val();
}
});
