javascript - 开放购物车 : Search no longer works after repositioning

标签 javascript forms opencart2.x

我正在通过更改 OpenCart 2.0.2.0 的默认模板代码来设计自己的模板。重新定位“搜索”字段后,它不再起作用:按 Enter 键时不会提交,并且单击表单中的搜索按钮时不会在 URL 中提交搜索值(但表单会提交)。

为了尝试找出重新定位输入字段时出现的问题,我在 WampSever 上重新安装了 OpenCart,并且在不更改任何其他内容的情况下,我将输入字段移至主导航,就在类别之后UL——只需复制打印搜索模板的 PHP 标签即可:

<?php echo $search; ?>

没有别的了。表单在按键盘上的 Enter 时提交,并在单击搜索按钮时提交,但搜索参数不再附加到 URL,例如

http://localhost/opencart/index.php?route=product/search&search=macbook

我需要您的帮助来找出发生这种情况的原因以及如何在不失去其功能的情况下移动搜索字段。我想这与 Javascript 相关,但不确定如何。

最佳答案

回答我自己的问题: 是的,它与 Javascript 相关。由于搜索输入字段没有包装在 中,为了提交它并获取搜索查询,编写了两个 jQuery 函数(在catalog/view/javascript/common.js 中,第64-81 行)。 这些函数通过首先引用输入最初所在的位置来获取搜索输入值:

[第 68 行]

var value = $('header input[name=\'search\']').val();

[第 79 行]

$('header input[name=\'search\']').parent().find('button').trigger('click');

为了使其正常工作,我必须将“header”的两个实例替换为菜单的 ID:

var value = $('#menu input[name=\'search\']').val();

然后排序! 希望这能帮助像我这样的其他 OpenCart 初学者:)

关于javascript - 开放购物车 : Search no longer works after repositioning,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30260000/

相关文章:

javascript - 正则表达式以嵌套可排序形式更新表单输入多个索引

javascript - 使用 javascript 从 HTML 转换 Word 文档时添加图像时遇到问题

javascript - javascript 中的 WebDriver : how to check if an element exists?

ios - IOS 的表单容器组件

javascript - 为什么我的 object.children 未定义?

php - Opencart 2.0 类别特定 echo

javascript - 我将如何使用 AngularJS ng-repeat 来重复这个结构

javascript - 使用 localstorage 为同一域下的另一个页面存储用户的电子邮件地址是一种好习惯吗?

mysql - Opencart 无法加载数据库驱动程序 mmysqli

c++ - 如何在轮廓 OpenCV 中获得最大面积?