单击“后退”按钮时,IE不会运行Javascript

时间:2009-11-05 23:51:45

标签: javascript events internet-explorer

我已经建立了一个运行大量JS的商店。 其中一个购物车是一个邮政编码字段,用于计算运费。

这可以很好地通过购物车。现在点击结账会带你到paypal。 如果单击后退,则在IE中不会触发设置脚本(如清除zip字段)。

他们在Safari& amp; FF,但IE除非你刷新,脚本不会重新检查运费,用户最终免费送货。

有关如何处理此问题的任何想法? 谢谢 富

---代码片段----

function loadCartTriggers() {
    if($('cart')) {
        var size_menus = document.getElementsByTagName('select');
        $('zip').value = '';
        giftOption();
        for(i=0; i<size_menus.length; i++) {
            addEvent('change', updateProdData, size_menus[i].id);
        }
        addEvent('click', giftOption, 'gift');
        addEvent('keyup', getShipRate, 'zip');
        addEvent('click', checkZip, 'checkout_faux');
        addEvent('click', giftCharge, 'gift');
    }
}

loadCartTriggers();

bsn。 krd。 webhop .net / shop

(只是不想将地址编入索引)

1 个答案:

答案 0 :(得分:1)

作为一种做法,您应该永远不会依赖客户端(Javascript)表单验证,因为任何由Javascript填充的字段都可能被篡改。我假设您正在使用PayPal表单结帐。您的选择包括使用PayPal的表格加密/编码(这将允许您提交邮政编码业务)。

无论什么,您应该始终使用PayPal的电子邮件通知或IPN来验证所有条目。如果您需要有关服务器大小验证的更多帮助,请跟进评论,有人可以引导您访问API。