分析ecshop控制收货地址的原理步骤
2009-11-19 10:10 来源:www.chinab4c.com 作者:ecshop专家
ecshop中,在ecshop购买的时候,会有一个环节,就是输入收货人地址,如果不输入,就会自动转向,让你输入那些信息。那么ECSHOP控制收货地址有那些步骤呢,具体的代码原理又是什么呢.下面将结合程序,一起来分析。
当你进入购买,点结算之后,本身该跳往checkout那里的。但是在flow.php?setp=checkout里面有一行代码.
if (!check_consignee_info($consignee, $flow_type))
{
ecs_header("Location: flow.php?step=consignee\n");
exit;
}
它通过ecshop函数check_consignee_info检查是否输入完整的地址信息,如果不完整,那么将跳转到flow.php?step=consignee.控制你输入收货人信息
在step=consignee中,我们可以看到.表单里面有checkConsignee()函数做JS校验.
/* *
* 检查收货地址信息表单中填写的内容
*/
function checkConsignee(frm)
{
var msg = new Array();
var err = false;
if (frm.elements['country'] && frm.elements['country'].value == 0)
{
msg.push(country_not_null);
err = true;
}
if (frm.elements['province'] && frm.elements['province'].value == 0 && frm.elements['province'].length > 1)
{
err = true;
msg.push(province_not_null);
}
if (frm.elements['city'] && frm.elements['city'].value == 0 && frm.elements['city'].length > 1)
{
err = true;
msg.push(city_not_null);
}
if (frm.elements['district'] && frm.elements['district'].length > 1)
{
if (frm.elements['district'].value == 0)
{
err = true;
msg.push(district_not_null);
}
}
if (Utils.isEmpty(frm.elements['consignee'].value))
{
err = true;
msg.push(consignee_not_null);
}
if ( ! Utils.isEmail(frm.elements['email'].value))
{
err = true;
msg.push(invalid_email);
}
if (frm.elements['address'] && Utils.isEmpty(frm.elements['address'].value))
{
err = true;
msg.push(address_not_null);
}
if (frm.elements['zipcode'] && frm.elements['zipcode'].value.length > 0 && (!Utils.isNumber(frm.elements['zipcode'].value)))
{
err = true;
msg.push(zip_not_num);
}
if (Utils.isEmpty(frm.elements['tel'].value))
{
err = true;
msg.push(tele_not_null);
}
else
{
if (!Utils.isTel(frm.elements['tel'].value))
{
err = true;
msg.push(tele_invaild);
}
}
if (frm.elements['mobile'] && frm.elements['mobile'].value.length > 0 && (!Utils.isTel(frm.elements['mobile'].value)))
{
err = true;
msg.push(mobile_invaild);
}
if (err)
{
message = msg.join("\n");
alert(message);
}
return ! err;
}
他将控制每个必须输入框,进行严格的控制.
相关文章:
来源:中国B4C电子商务
最近更新
常用插件
- ecshop购物车功能改进[插件
ecshop购物车功能改进[插件套餐]主要是我们最近开发工作和开发项目中。...
- ecshop降价通知登记插件
ecshop降价通知登记插件,主要是为了方便某些客户,对商品价格要求比...
- ecshop通用红包编码
很多时候,为了结合促销,必须扩展一下ecshop的红包功能。ecshop的红包...
- ecshop红包修改成满多少减
我们在长期使用ecshop的时候,我们可以发现。ecshop的红包是一个非常强...
- ecshop分类树中统计商品数
最近忙于开发其他项目,在不少朋友不断要求和催促的情况下,做出了该小...