简体   繁体   English

结帐在magento1.7中不起作用

[英]checkout is not working in magento1.7

I have a multistore done in Magento 1.7 . 我在Magento 1.7完成了一个杂货店。 Checkout is not working in one store. 结帐不在一家商店中进行。 Nothing is happening after clicking the continue button inside Billing Information block which calls the function onclick="billing.save()" . 单击Billing Information块中的继续按钮后,什么也没有发生,该按钮调用函数onclick="billing.save()" I checked with firebug all blocks are coming correctly. 我用萤火虫检查了所有块是否正确。 I think the problem is with the function billing.save() . 我认为问题出在函数billing.save() Where I can find this function. 在哪里可以找到此功能。

EDIT 编辑

I have checked my response in transport.responseText in billing.save() for one store I am getting response like this 我已经在billing.save()中的transport.responseText中检查了一个商店的响应,我正在得到这样的响应

{"goto_section":"shipping_method","update_section":{"name":"shipping-method","html":"<dl class=\"sp-methods\">\r\n<p>We are shipping daily until 12.19.2011 although most orders will arrive for the Holidays, we can not guarentee 12.25.2011 delivery (for orders placed after 12.14.2011). <span style=\"color:red;\">We begin shipping again in January - Order Honeybells Now!<\/span><\/p>\r\n            <dt>Flat Shipping<\/dt>\r\n        <dd>\r\n            <ul>\r\n                            <li>\r\n                                                                   <span class=\"no-display\"><input name=\"shipping_method\" type=\"radio\" value=\"flatship_flatship\" id=\"s_method_flatship_flatship\" checked=\"checked\" \/><\/span>\r\n                                                <label for=\"s_method_flatship_flatship\">Standard US                                                                        <span class=\"price\">$12.00<\/span>                                                <\/label>\r\n                                   <\/li>\r\n                        <\/ul>\r\n        <\/dd>\r\n    <\/dl>\r\n"},"allow_sections":["shipping"],"duplicateBillingInfo":"true"}

and for the store which is not working its coming like this 对于无法正常运作的商店

<meta name="google-site-verification" content="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" />
{"goto_section":"shipping_method","update_section":{"name":"shipping-method","html":"<dl class=\"sp-methods\">\r\n<p>We are shipping daily until 12.19.2011 although most orders will arrive for the Holidays, we can not guarentee 12.25.2011 delivery (for orders placed after 12.14.2011). <span style=\"color:red;\">We begin shipping again in January - Order Honeybells Now!<\/span><\/p>\r\n            <dt>Flat Shipping<\/dt>\r\n        <dd>\r\n            <ul>\r\n                            <li>\r\n                                                                   <span class=\"no-display\"><input name=\"shipping_method\" type=\"radio\" value=\"flatship_flatship\" id=\"s_method_flatship_flatship\" checked=\"checked\" \/><\/span>\r\n                                                <label for=\"s_method_flatship_flatship\">Standard US                                                                        <span class=\"price\">$43.80<\/span>                                                <\/label>\r\n                                   <\/li>\r\n                        <\/ul>\r\n        <\/dd>\r\n    <\/dl>\r\n"},"allow_sections":["shipping"],"duplicateBillingInfo":"true"}

I don't know from where this meta tag is coming and when I alert response.update_section.name in side setStepResponse: function(response){ its coming as undefined... 我不知道此meta标签来自何处以及何时在侧面setStepResponse: function(response){警告response.update_section.name setStepResponse: function(response){其来之不定...

EDIT 2 编辑2

Now meta tag problem has been solved.. They have added that meta tag inside index.php of their sub domain folder. 现在,元标记问题已解决。.他们在其子域文件夹的index.php中添加了该元标记。 Now the problem is when I place order it displays 现在的问题是我下订单时显示

Gateway error: (TESTMODE) The merchant login ID or password is invalid or the account is inactive. 网关错误:(TESTMODE)商户登录ID或密码无效或帐户无效。

Any one has any idea please help me. 任何人有任何想法请帮助我。 Its working fine in another store. 它在另一家商店工作正常。 I am using Authorize.net for payment and enabled Test Mode . 我正在使用Authorize.net进行付款并启用了Test Mode

I've had a very similar problem 我有一个非常相似的问题

I've found that on Magento 1.7.0.2 Onepage checkout when I click the continue button after filling in the Billing details the button disappears and nothing else happens. 我发现在Magento 1.7.0.2一页结帐中,当我在填写帐单明细后单击继续按钮时,该按钮消失了,没有任何其他反应。

What I've tried: First of all debugging the JS gives me the following error 我尝试过的方法:首先调试JS给我以下错误

Uncaught TypeError: Cannot set property 'disabled' of undefined opcheckout.js:81
Checkout._disableEnableAll opcheckout.js:81
Checkout.setLoadWaiting opcheckout.js:94
Billing.save opcheckout.js:307
onclick

And the following error in Chrome 和Chrome中的以下错误

Uncaught TypeError: Cannot read property 'textContent' of null chrome-extension://dhkplhfnhceodhffomolpfigojocbpcb/cs.js:239
babyCS.getSelectedText chrome-extension://dhkplhfnhceodhffomolpfigojocbpcb/cs.js:239
babyCS.saveSelection chrome-extension://dhkplhfnhceodhffomolpfigojocbpcb/cs.js:209
babyCS.click

I also rolled back the server to an image taken just before our last order, even though we know this code works (as an order was placed using that code) when we run it now we get the same issue. 我也将服务器回滚到上次下单之前拍摄的图像,即使我们知道运行该代码时(由于使用该代码下达了订单),现在也遇到了同样的问题。

So we figured it might be due to a change in the config settings, rather than a code issue. 因此,我们认为这可能是由于配置设置发生了变化,而不是代码问题。 We changed the 'shipping method' config for Free Shipping (our only shipping option) from 'specified countries' to 'All allowed countries' and it fixed the issue... for about 5 minutes! 我们将“免费送货”(我们唯一的送货选项)的“送货方式”配置从“指定的国家”更改为“所有允许的国家”,此问题已解决了大约5分钟! We tested it from a couple of locations and it worked, so we switched the discounts back on and it all vanished again. 我们在几个地方对其进行了测试,并且可以正常工作,因此我们重新打开了折扣,一切都消失了。

To get to this step I can see in Fiddler there's a call to 要执行此步骤,我可以在Fiddler中看到一个调用

/checkout/onepage/progress/?toStep=billing

But when I click the Continue button to go to the next step it doesn't appear to call /?toStep=shipping 但是,当我单击“继续”按钮转到下一步时,它似乎没有调用/?toStep=shipping

This function can be found in 可以在以下位置找到此功能

skin/frontend/your_package/your_theme/js/optcheckout.js

or, if it's not in /your_package/your_theme/ and /your_package/default/, it's in /base/default/ 或者,如果不在/ your_package / your_theme /和/ your_package / default /中,则在/ base / default /中

In Magento 1.7 is should be in the line 302 of the file (if nothing was modified). 在Magento 1.7中,应该在文件的第302行中(如果未进行任何修改)。

But I don't think the problem is there. 但我认为问题不存在。 Have you checked the response for saveBilling in Firebug/Developer Tools? 您是否在Firebug / Developer Tools中检查过saveBilling的响应?

I think the error explain it self ? 我认为错误可以自我解释吗? have you contacted Authorize.net and checked your test account if its working ?? 您是否已联系Authorize.net并检查了您的测试帐户是否正常工作?

I am gussing you're getting the problem in IE9? 我猜您在IE9中遇到问题了吗? there's a know issue with the checkout which only affects certain IE versions. 结帐存在一个已知问题,该问题仅影响某些IE版本。 Can you try Chrome or FF and see if the issue is still there? 您可以尝试使用Chrome或FF看看问题是否仍然存在吗?

If this is indeed the same issue, this can be overcome by forcing IE into IE8mode 如果确实是同一问题,则可以通过将IE强制为IE8mode来解决此问题。

You can try adding this to your htaccess: 您可以尝试将其添加到您的htaccess中:

BrowserMatch MSIE best-standards-support
Header set X-UA-Compatible IE=8 env=best-standards-support

Regarding EDIT 2: 关于编辑2:

I believe that the problem is with your account. 我认为问题出在您的帐户上。 You can check it by creating another test account under https://developer.authorize.net/testaccount/ You can access this account on https://test.authorize.net/ Try using test account in Magento and see if there are any problems with it. 您可以通过下创建另一个测试帐户检查https://developer.authorize.net/testaccount/您可以访问该帐户https://test.authorize.net/ Magento中使用测试帐户来试试,看看是否有任何问题。

Also, remember to use https://test.authorize.net/gateway/transact.dll gateway address for testing and https://secure.authorize.net/gateway/transact.dll when setting Authorize.net to process real transactions. 另外,记得使用https://test.authorize.net/gateway/transact.dll网关地址,用于测试和https://secure.authorize.net/gateway/transact.dll设置Authorize.net处理实际交易的时候。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM