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;
}

 

下载说明: 帮助教程
1.资源失效请联系QQ:1138166071补发;寻课加QQ联系
2.资源均为网络收集,仅供参考研究,请在下载后24小时内删除。不要商用和非法用途,否则后果自己承担。
3.默认解压密码:blog.qdql.net
4.购买本站资源即代表同意本站免责协议
5.提示:本站资源属虚拟商品,购买后恕不退款。
6.特别声明本站资源部分来源于网络,如有侵权,请联系站长进行删除处理!
本文地址:http://blog.qdql.net/1774/

发表评论


表情