所以我有几个问题。第一个...我有2页,一个products.html
页面和一个search.html
页面。 products.html
页面在.onPageAfterAnimation()中运行一些Ajax;从数据库获取产品并显示它们。返回的HTML包含用户可以在文本框内增加和减少数字值的部分。jQuery Click Event Issue - Framework7
增加或减少1的值开始工作但是当我打开products.html
页,当我进入search.html
,并使用我的Android的后退按钮返回到products.html
页面(我的按钮有pushState = true
),然后按增/减键会增加/ 2,通过降低。如果我再次尝试它增加做同样的事情/ 3下降等等...
这个我我的增加/减少代码在我products.html放在页面:
myApp.onPageAfterAnimation('catalogs', function (page) {
//Increse/decrease product quantity
$(“.promo-screen-content”).on(“click”, “.addToCartBtn”, function(){
var productid = $(this).attr(“data-productId”),
currentvalue = parseInt($('#txtQuantity' + productid).val());
$('#txtQuantity' + productid).val((currentvalue + 1).toString());
});
$(“.promo-screen-content”).on(“click”, “.removeFromCartBtn”, function(){
var productid = $(this).attr(“data-productId”),
currentvalue = parseInt($('#txtQuantity' + productid).val());
if(currentvalue > 1){
$('#txtQuantity' + productid).val((current_value – 1).toString());
}
});
});
谁知道为什么发生这种情况,如何解决?
我的第二个问题有点不同。当我点击一个按钮时,需要点击并执行过程3或4次。因此,例如,如果我在点击时显示通知,则会显示该通知3到4次。
我不知道这些是常见还是知道人们遇到的问题。任何帮助是极大的赞赏!
你什么时候打电话给上面的代码? (*绑定发生的时间*)。我在问,因为问题是你有多次绑定相同的处理程序(*因此它们运行多次*)。 –
因此,快速解决可能是使用'off'来解除处理程序的再次绑定。 '('click','。addToCartBtn',...)''和'$(“。promo-screen)('点击','。addToCartBtn')。 ('click','。removeFromCartBtn',...)'。off('click','。removeFromCartBtn')。但是基于** Framework7 **必须有一个更正确的方法,我不使用,所以我不能建议任何相关的东西。 –
默认情况下,所有页面都使用Ajax加载。我不知道这可能与它有什么关系,因为当我去'search.html'然后回到'products.html',然后在那个页面中刷新它又开始工作。所以这发生在第二页加载Ajax并返回之后。 –