简体   繁体   English

jQuery mobile-pageinit事件在使用mobile.changePage时未触发

[英]jquery mobile - pageinit event no triggered when using mobile.changePage

I have the following code for handling on click event of a button: 我有以下代码来处理按钮的click事件:

$(document).on("click", '.submit_review_button', function(event, ui) {


    var place = $.data(this, "object");
    var ttext = $("#review_text").val();
    var review = new Object();
    review.business_place_id = place._id;
    review.review = ttext;
    review.user_id = user._id;
    // var review = {business_place_id:place.id, review: ttext, user_id: user.id}

    $.ajax({
        url: site_url + '/reviews/',
        type:'POST',
        data: review,
        success: function(data) {
            $.mobile.changePage("show_reviews_page", {
                    allowSamePageTransition: true,
                    transition: 'none',
                    reloadPage: true    
                });
            // initShowReviewsPage();


       },
       error:function(data) {
        alert(1);
    }

});

});

I also have this code in document-ready: 我在准备文档时也有以下代码:

  $("#show_reviews_page").on('pageinit', function() {
        initShowReviewsPage();
    });

I know that the pageInit binding works, because if I go to #show_reviews_page using it works. 我知道pageInit绑定有效,因为如果我使用#show_reviews_page可以使用。

But when clicking on the .submit_review_button button, the on click event fires, the page changes but the init doent fire and the page is not valid. 但是,当单击.submit_review_button按钮时,将触发on click事件,页面会发生变化,但是init doent会触发并且该页面无效。

Any idea why it doesnt work? 任何想法为什么它不起作用?

"pageinit" event is fired only once when the page loads in the DOM for the first time. 当页面首次加载到DOM中时,仅触发一次“ pageinit”事件。 If you want fire a function everytime you go to a page, use "pageshow" or "pagebeforeshow" events. 如果您想在每次访问页面时触发功能,请使用“ pageshow”或“ pagebeforeshow”事件。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM