有一个脚本:
$(document).on('click', '.post-<?php the_ID(); ?> .add_to_cart_button', function(e) {
$( ".post-<?php the_ID(); ?> .dobavlannovcart" ).show();
var glavnikolvo = $(".post-<?php the_ID(); ?> .kuplukolvoinput .qty").val();
var natovarkolvo = $(".post-<?php the_ID(); ?> .dobavlannovcart .qty").val();
var res = parseInt(glavnikolvo) + parseInt(natovarkolvo);
$('.post-<?php the_ID(); ?> .dobavlannovcart .qty').val(res);
});
目前直接插入php代码,这是不正确的。当2个相同的页面,脚本完成2次...如何将脚本放在function.php或main.js中,这样他就可以继续工作了。要做到这一点,我理解我需要在main.js中传递id或在function.php中执行某些操作。
答案 0 :(得分:0)
对不起,迟到了。
在生成类add_to_cart_button
按钮的主页面中,您可以编辑输出,使按钮如下所示。
<button class="add_to_cart_button" data-id="<?php get_the_id() ?>" ...... >
现在, 在您的JS文件中,在代码中进行以下编辑。
$(document).on('click', '.add_to_cart_button', function(e) {
var id = $(this).data('id');
$( ".post-"+id+" .dobavlannovcart" ).show();
var glavnikolvo = $(".post-"+id+" .kuplukolvoinput .qty").val();
var natovarkolvo = $(".post-"+id+" .dobavlannovcart .qty").val();
var res = parseInt(glavnikolvo) + parseInt(natovarkolvo);
$('.post-"+id+" .dobavlannovcart .qty').val(res);
});