Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery按类名禁用页面上的按钮_Jquery_Magento_Button - Fatal编程技术网

jQuery按类名禁用页面上的按钮

jQuery按类名禁用页面上的按钮,jquery,magento,button,Jquery,Magento,Button,我需要一个功能来禁用此按钮: <button type="submit" title="Place Order" class="button btn-checkout" onclick="review.save();"><span><span>Place Order</span></span> </button> 下订单 我想在复习前打电话给它。保存在onclick中

我需要一个功能来禁用此按钮:

<button type="submit" 
        title="Place Order" 
        class="button btn-checkout" 
        onclick="review.save();"><span><span>Place Order</span></span>
</button>
下订单
我想在复习前打电话给它。保存在onclick中。 我应该删除onclick属性并将其设置为click事件处理程序,然后在那里执行吗

一些客户按了两次按钮,收到了重复的订单和费用。
我是否也应该禁用表单的提交?最好的处理方法是什么?这是一个Magento单页结账。

老学校在这里工作得很好

<button type="submit" 
        title="Place Order" 
        class="button btn-checkout" 
        onclick="review.save();this.disabled = 'disabled';"><span><span>Place Order</span></span>
</button>
下订单
禁用onclick;)


$('.btn checkout').attr('onclick','return false')

您可以通过设置disabled属性来禁用按钮

$(".btn-checkout").attr("disabled", "disabled");

您可以通过运行以下命令禁用该按钮:

$(".btn-checkout").attr('disabled', 'disabled');

我建议使用jQuery:

$(document).ready(function() {
    $('button.btn-checkout').click(function(e) {
        $(this).attr('disabled', 'disabled');
        review.save();
    });
});

save
callback(取决于它实际执行的操作)上,可以再次启用该按钮。

如果是Magento,则是prototype,而不是jquery。因此:

$$('.button').each(function(elmt) {
elmt.observe('click', function(ev) {
        ev.target.disabled='disabled';
});
});

单击页面上的所有按钮后,应该会将其禁用。

我再次问,这些是处理此问题的最佳方法吗?