jQuery Mobile $(“#popup”)。popup(“open”);转换页面后无法正常工作

时间:2014-12-10 19:30:39

标签: javascript jquery html jquery-mobile

我有2个JQM页面和1个弹出窗口,它们都共享。我有一个事件处理程序绑定到两个“pagecreate”的内部代码如下:

$(document).on("pagecreate", "#home", function() {
    $("#cart-button").on("tap", function(event) {
        alert("home alerted");
        event.preventDefault();
        $("#cartContextMenu").popup("open", { x: event.pageX, y: event.pageY });
    });
});

$(document).on("pagecreate", "#cat-cart", function() {
    $("#cart-button").on("tap", function(event) {
        alert("cat cart alerted");
        event.preventDefault();
        $("#cartContextMenu").popup("open", { x: event.pageX, y: event.pageY });
    });
});

BOTH页面内的HTML弹出代码JQM页面标记:

<div data-role="popup" id="cartContextMenu" data-arrow="true">
    <a href="#cat-cart"><input class="create-a-new-order" data-icon="plus" type="button" value="Create Order" /></a>
    <a href="#cat-cart"><input data-icon="forward" type="button" value="4398230424" /></a>
    <a href="#cat-cart"><input data-icon="forward" type="button" value="4398230324" /></a>
    <a href="#cat-cart"><input data-icon="forward" type="button" value="CSOS8230948" /></a>
    <a href="#cat-cart"><input data-icon="forward" type="button" value="44948" /></a>
    <a href="#cat-cart"><input data-icon="forward" type="button" value="CFDXKJFJF" /></a>
</div>

当我点击/点击#home页面上的按钮时,弹出窗口显示正常...当我转换到#cat-cart并再次单击该按钮时,警报会触发,但不会显示JQM弹出窗口。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

答案很简单,每次点击事件都绑定到第一个按钮,即第1页。

每页都有不同的按钮。