Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery手机弹出窗口,需要点击两下才能关闭_Jquery_Mobile_Popup - Fatal编程技术网

jquery手机弹出窗口,需要点击两下才能关闭

jquery手机弹出窗口,需要点击两下才能关闭,jquery,mobile,popup,Jquery,Mobile,Popup,我有一个页面的内容是通过ASP转发器动态创建的 <div id="divrowToShow" runat="server"> <ul data-role="listview" data-theme="a"> <asp:Repeater ID="wishlistRepeater" runat="server"> <ItemTemplate

我有一个页面的内容是通过ASP转发器动态创建的

            <div id="divrowToShow" runat="server">
            <ul data-role="listview" data-theme="a">
                <asp:Repeater ID="wishlistRepeater" runat="server">
                    <ItemTemplate runat="server">
                        <li data-icon="hand-right" data-theme="b" id="item<%#Container.DataItem("pid")%>">
                           <a href='ProductItem_sdm.aspx?pid=<%#Container.DataItem("pid")%>' rel="external">
                                <img src="/images/widerLayout/product/thumb/<%#Container.DataItem("pid")%>.jpg" width="75%" height="75%" />
                                <p style="color:Red; font-size:x-small">item# - <%#Container.DataItem("pid")%></p>
                                <p style="font-size: x-small; font-weight:bold" class="pd<%#Container.DataItem("pid")%>"><%#Container.DataItem("title")%></p>
                                <p style="font-size: x-small" class="currency p<%#Container.DataItem("pid")%>"><%#Container.DataItem("price")%></p>
                            </a>
                            <fieldset class="ui-grid-a">
                                <div class="ui-block-a">
                                    <a href="#" id="btnAddCart-<%#Container.DataItem("pid")%>" class="btnAddCart" data-role="button" data-mini="true" data-theme="a" data-icon="shopping-cart">To Cart</a>
                                </div>
                                <div class="ui-block-b">
                                    <a href="#" id="btnRemoveWish-<%#Container.DataItem("pid")%>" class="btnRemoveWish" data-role="button" data-mini="true" data-theme="b" data-icon="remove" data-iconpos="right">Remove</a>
                            </fieldset>                            
                        </li>
                    </ItemTemplate>
                </asp:Repeater>
            </ul>
        </div>
所有这些都很好。我使用类而不是ID对Add按钮执行绑定,因此当用户单击特定项时,我使用“$(this)”捕获数据

弹出窗口显示,但当我点击OK按钮关闭时,我需要点击两次,而不是一次。我看到URL发生了变化,但直到第二次单击才关闭。这是关闭代码:

    // clear off the response message ffor adding to cart
$("#btnwishCartOk").bind("click", function (event, ui) {
    $("#wishItemAdded").popup("close");
});
这是绑定到类的函数,而不是ID(名称)。当我在带有断点的firebug中运行时,没有错误。这几乎就像创建了两个弹出窗口,但我只看到一个打开的。如果不双击OK按钮,我如何判断我有两个,或者我如何选择clsoe


我要补充的是,我在另一个页面上执行了相同的过程(这是我复制此代码的地方),它可以工作。但是,该页面不使用转发器,我使用其名称(而不是类)绑定Add按钮

尝试从以下位置更改对弹出窗口的调用:

//set up some basic options for display
$("#wishItemAdded").popup({ dismissible: false });
$("#wishItemAdded").popup({ transition: "fade" });

$("#wishItemAdded").popup("open");
为此:

//set up some basic options for display
$("#wishItemAdded").popup("open", { dismissible: false, transition: "fade" });

尝试在
$(“#wishItemAdded”).popup(“open”)
上设置断点,以确认是否多次调用该弹出窗口…我这样做了,而open仅触发一次。我也在结尾处放了一个。很明显,当我点击断点,继续并执行Close时,它会触发,但不会删除覆盖。当我再次单击“OK”时,断点再次被命中,我继续,这次覆盖(弹出)被删除。你能用你的代码制作一个JSFIDLE吗?好的,我试过了,虽然我更喜欢代码,但仍然得到了相同的结果。一定有什么东西打开了另一个弹出窗口,因为当我把两个关闭在一起,它的工作
//set up some basic options for display
$("#wishItemAdded").popup({ dismissible: false });
$("#wishItemAdded").popup({ transition: "fade" });

$("#wishItemAdded").popup("open");
//set up some basic options for display
$("#wishItemAdded").popup("open", { dismissible: false, transition: "fade" });