Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.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
Javascript Pageinit函数导致重复信息_Javascript_Jquery_Jquery Mobile - Fatal编程技术网

Javascript Pageinit函数导致重复信息

Javascript Pageinit函数导致重复信息,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,下面的代码从服务器检索信息并将其显示在我的页面上。当我调用不带pageinit函数的方法时,它可以正常工作。当我用pageinit调用它时,我最终得到了重复的信息x5 例如,我应该检索并显示以下信息: Hello 我最终得到: Hello Hello Hello Hello Hello 请告诉我出了什么问题。特克斯 以下代码工作正常 //Budget $.getJSON("example.com",function(data){ var wrap = $("<d

下面的代码从服务器检索信息并将其显示在我的页面上。当我调用不带pageinit函数的方法时,它可以正常工作。当我用pageinit调用它时,我最终得到了重复的信息x5

例如,我应该检索并显示以下信息:

Hello
我最终得到:

Hello
Hello
Hello
Hello
Hello
请告诉我出了什么问题。特克斯

以下代码工作正常

//Budget
    $.getJSON("example.com",function(data){
        var wrap = $("<div/>").attr('data-role', 'collapsible');
        //Create the h1 and the other elements appending them to bills List
        $("<h1/>",{
            text:"Budget Details"
        }).appendTo(wrap);
        $("<p/>",{
            text:"Bank Balance: \u00A3"+ data.bank
        }).appendTo(wrap);
        $("<p/>",{
            text:"Cash Balance: \u00A3"+ data.cash
        }).appendTo(wrap);
        $("<p/>",{
            text:"Daily Budget: \u00A3"+ data.daily_aim
        }).appendTo(wrap);
        $("<p/>",{
            text:"Daily Expense: \u00A3"+ data.spent_today
        }).appendTo(wrap);
        wrap.appendTo('#budgetList');
        $( "#budgetList" ).collapsibleset( "refresh" );
    })//end of budget page update
//预算
$.getJSON(“example.com”,函数(数据){
var wrap=$(“”).attr('数据角色','可折叠');
//创建h1和将其附加到账单列表的其他元素
$("",{
正文:“预算详情”
}).附件(包装);
$(“

”{ 文本:“银行余额:\u00A3”+data.Bank }).附件(包装); $(“

”{ 文本:“现金余额:\u00A3”+data.Cash }).附件(包装); $(“

”{ 文本:“每日预算:\u00A3”+data.Daily\u目标 }).附件(包装); $(“

”{ 文本:“每日费用:\u00A3”+数据。今天已花费\u }).附件(包装); wrap.appendTo(“#预算列表”); $(“#预算列表”).collappableset(“刷新”); })//预算结束页面更新

以下代码给出了重复信息

$(document).on("pageinit",function(){
    //Budget
    $.getJSON("http://example.com",function(data){
        var wrap = $("<div/>").attr('data-role', 'collapsible');
        //Create the h1 and the other elements appending them to bills List
        $("<h1/>",{
            text:"Budget Details"
        }).appendTo(wrap);
        $("<p/>",{
            text:"Bank Balance: \u00A3"+ data.bank
        }).appendTo(wrap);
        $("<p/>",{
            text:"Cash Balance: \u00A3"+ data.cash
        }).appendTo(wrap);
        $("<p/>",{
            text:"Daily Budget: \u00A3"+ data.daily_aim
        }).appendTo(wrap);
        $("<p/>",{
            text:"Daily Expense: \u00A3"+ data.spent_today
        }).appendTo(wrap);
        wrap.appendTo('#budgetList');
        $( "#budgetList" ).collapsibleset( "refresh" );
    })//end of budget page update
});
$(document).on(“pageinit”,function(){
//预算
$.getJSON(“http://example.com,函数(数据){
var wrap=$(“”).attr('数据角色','可折叠');
//创建h1和将其附加到账单列表的其他元素
$("",{
正文:“预算详情”
}).附件(包装);
$(“

”{ 文本:“银行余额:\u00A3”+data.Bank }).附件(包装); $(“

”{ 文本:“现金余额:\u00A3”+data.Cash }).附件(包装); $(“

”{ 文本:“每日预算:\u00A3”+data.Daily\u目标 }).附件(包装); $(“

”{ 文本:“每日费用:\u00A3”+数据。今天已花费\u }).附件(包装); wrap.appendTo(“#预算列表”); $(“#预算列表”).collappableset(“刷新”); })//预算结束页面更新 });


您需要将
pageinit
绑定到特定页面。它每一页触发一次,因此,如果您不指定页面就离开它,则每当启动页面时,它都会触发。绑定到特定页面会起作用,并且不会重复信息。但是如果没有我的折叠集,这会使显示器看起来很时髦,但我猜这是另一个问题。你想回答这个问题让我接受吗。根据您的代码,当您刷新它时,可折叠集应该看起来很好。如果内部的可折叠文件不是样式,则使用此
$(“#预算列表”).collapsableset(“刷新”).enhanceWithin()
trued.enhanceWithin()仍然返回纯文本,而不包含collapsableset.wird,然后返回
$(“#预算列表”).collapsableset()应该完成这项工作。