我们使用下面的代码建议here来显示图标而不是文字,但在我们使用下面的代码后,主要是 Jquery.min.js 现在“添加到购物车“按钮无效this link。
std::string
主控台错误:
未捕获的TypeError:无法读取undefined的属性'submit' 在HTMLButtonElement.onclick 下面的行代码。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
$(document).ready(function() {
var inner = Array();
inner = $(" .product-options ul.options-list .label>label");
for (i = 0; i < inner.length; i++) {
var classN = inner[i].innerText;
if (classN == "Black" || classN == "Green") {
inner.eq(i).addClass(classN);
}
}
});
</script>
修改
当我们不加载jquery时,<button type="button" title="Add to Cart" class="button btn-cart" onclick="productAddToCartForm.submit(this)"><span><span>Add to Cart</span></span></button>
按钮正常工作here
答案 0 :(得分:0)
发现问题好友! :)
我在你的HTML中发现了jquery.min.js脚本调用的几个实例,我不知道你为什么要这样做但是这会导致$.noConflict()
无法工作而不会覆盖正常的行为jQuery和Prototype在同一页面上工作。
以下是我删除的内容的截图
删除了<head>
标记的所有实例,但第一个和HTML中的第一个jquery.min.js脚本调用除外。
古德勒克!
<强> **更新** 强>
根据OP的关注,这是以magento运行的,并且严格需要来自上图的代码。因此,在jquery.min.js脚本调用之后放置var jQuery = $.noConclict()
并将$
替换为jQuery
函数中的document.ready
可以解决问题。