我正在尝试运行prestashop。我已经制作了自定义主题,注册时遇到问题。当有人在结账时尝试注册时,他收到错误:
技术错误:无法加载表单。详细信息:抛出错误:[object Object]文本状态:error
我无法弄清楚在哪里搜索解决方案。或者也许有人知道如何禁用ajax注册?
的问候。
答案 0 :(得分:4)
我找到了解决方案。大多数消息来源告诉我应该关闭主题中的移动功能。我这样做了,但没有用。所以我检查了表格,它引用了某个地址,但AJAX请求被定向到主页。
所以我在文件中修改了AJAX请求,因此它指向与表单相同的位置。
在第97行的/themes/default/authentication.tpl中有行:
url: baseUri,
我把它改成了:
url: baseUri + 'index.php?controller=authentication',
所以AJAX请求在正确的地址下。之后我不得不在/themes/default/mobile/authentication*.tpl下更改一些移动身份验证表单,因此它们包含一个输入电话号码的字段。解决整个问题的一切。
答案 1 :(得分:0)
这对我有用
在管理员面板中,转到“高级参数”>性能,向下滚动到 CCC(组合,压缩和缓存),然后选择Keep inline JavaScript 在HTML中作为原始。
答案 2 :(得分:0)
像
这样的错误TECHNICAL ERROR: unable to load form. Details: Error thrown: [object Object] Text status: error
在一页结账(OPC)
与来自正确位置的unhooked blockuserinfo (或此模块的更改挂钩)相关。
答案 3 :(得分:0)
此问题的另一个来源可能是blockcart / ajax-cart.js
在某些情况下,即使不需要,它也会在domready上触发ajaxCart.refresh()(实际上:在每个f * n'页面中),因此有时它会返回一个html(主页)文档,而不是ajax one,因此产生了我们所说的技术错误。
要解决这个问题,我只是重写了blockcart / ajax-cart.js,并在ajaxCart.refresh()发生错误的情况下简单地注释掉警报。 它不是一个优雅的解决方案,但老实说,因为这是由一些非常糟糕的js架构引起的(读取:某处的错误),并且因为我不认为警报对任何前端用户有用,我也认为评论它并不会有什么坏处。
Prestashop团队从来没有特别聪明地编写javascript,所以我经常最终从头开始重写。但在这种情况下,我认为小的覆盖它会更好。