删除表单验证会导致表单无法提交?

时间:2011-10-06 16:50:23

标签: forms magento e-commerce magento-1.5

我在Magento主题中删除了几乎所有的.js引用。具体来说,我已从添加到购物车按钮中删除了onclick。

template/catalog/product/view/addtocart.phtml我已删除onclick="productAddToCartForm.submit(this)

template/catalog/product/view/view.phtml我删除了这段代码......

<script type="text/javascript">
//<![CDATA[
var productAddToCartForm = new VarienForm('product_addtocart_form');
productAddToCartForm.submit = function(button, url) {
    if (this.validator.validate()) {
        var form = this.form;
        var oldUrl = form.action;

        if (url) {
           form.action = url;
        }
        var e = null;
        try {
            this.form.submit();
        } catch (e) {
        }
        this.form.action = oldUrl;
        if (e) {
            throw e;
        }

        if (button && button != 'undefined') {
            button.disabled = true;
        }
    }
}.bind(productAddToCartForm);

productAddToCartForm.submitLight = function(button, url){
    if(this.validator) {
        var nv = Validation.methods;
        delete Validation.methods['required-entry'];
        delete Validation.methods['validate-one-required'];
        delete Validation.methods['validate-one-required-by-name'];
        if (this.validator.validate()) {
            if (url) {
                this.form.action = url;
            }
            this.form.submit();
        }
        Object.extend(Validation.methods, nv);
    }
}.bind(productAddToCartForm);
//]]>
</script>       

然而,现在当我提交表格时,我什么都没得到。

我想将添加到购物车<button>更改为正确的提交。所以我改变了这个......

<button type="button" title="<?php echo $buttonTitle ?>" class="button btn-cart"><span><span><?php echo $buttonTitle ?></span></span></button>

到此......

 <input type="submit" value="<?php echo $buttonTitle ?>" />

当我这样做时,表单提交但我收到了“找不到页面”,我看到这样的网址/checkout/cart/add/uenc/aHR0cDovLzcwLjMyLjc0LjQ2L3J0bF9tYWdlbnRvL2luZGV4LnBocC9jYXRhbG9nL3Byb2R1Y3Qvdmlldy9pZC8xNQ,,/product/15/

在没有javascript的情况下,是否无法在Magento中以旧式方式提交表单?如果是的话,你能指点一下吗?

我的计划是连接我自己的jQuery验证(这很简单,我只需要验证qty字段的长度)并抛弃上面代码的一些荒谬。

1 个答案:

答案 0 :(得分:1)

我不知道怎么做,我不知道为什么,但是当我禁用“使用Web服务器重写”时,它可以使用标准的提交按钮。

enter image description here