Javascript 替换从外部in for循环加载的html字符串中的字符

Javascript 替换从外部in for循环加载的html字符串中的字符,javascript,jquery,html,replace,load,Javascript,Jquery,Html,Replace,Load,我努力实现的目标。在更改事件中,html正在更改。根据select的值,html片段的加载时间与值的加载时间相同。在这些html片段中,我需要用for循环的var I和一些其他变量替换一些变量。(用于后端挡板)。最后的html需要在div处追加 问题是,当我尝试访问$.get()或$.load()函数中的变量时,它总是使用最新的变量。当我像这样访问append函数中的变量时,一切都按它应该的方式进行 $('.reizigers-verzekeringen').append('<p>'

我努力实现的目标。在更改事件中,html正在更改。根据select的值,html片段的加载时间与值的加载时间相同。在这些html片段中,我需要用for循环的var I和一些其他变量替换一些变量。(用于后端挡板)。最后的html需要在div处追加

问题是,当我尝试访问$.get()或$.load()函数中的变量时,它总是使用最新的变量。当我像这样访问append函数中的变量时,一切都按它应该的方式进行

$('.reizigers-verzekeringen').append('<p>'+title+'</p>);
$('.reizigers-verzekeringen')。追加(''+title+'

);
加载的内容和需要替换的内容示例(在**之间):


完整的代码

$(".aantal-reizigers").change(function(){

    $(".reizigers-data").empty();
    $(".reizigers-verzekeringen").empty();
    var aantalReizigers = $(".aantal-reizigers").val();;
    var title="";
    var openclosedata="";
    var opencloseverzekeringen="";
    for (var i = 1; i <= aantalReizigers; i++) {

        if(i == 1){
            title = "hoofdreiziger";
            openclosedata='<div id="collapse'+i+'" class="panel-collapse in" style="height: auto;">';
            opencloseverzekeringen='<div id="collapseinsurance'+i+'" class="panel-collapse in" style="height: auto;">';
        }
        else{
            title = "reiziger "+i;
            openclosedata='<div id="collapse'+i+'" class="panel-collapse collapse">';
            opencloseverzekeringen='<div id="collapseinsurance'+i+'" class="panel-collapse collapse">';
        }

        $.get("booking/verzekeringen.html", function(html){
            html.replace("*TITLE*", title);<!--title is always the latest--> 
        })
        $(".reizigers-verzekeringen").append(
            '<p>'+title+'</p>'<!--this is going fine-->         
        );
    };
});
$(.aantal reizigers”).change(函数(){
$(“.reizigers数据”).empty();
$(“.reizigers-verzekeringen”).empty();
var aantalReizigers=$(“.aantal reizigers”).val();;
var title=“”;
var openclosedata=“”;
var opencloseverzekeringen=“”;
对于(var i=1;i
);
};
});

以下是一种方法:

将html放入变量中

e、 g:

然后在循环内部,而不是调用get只使用html。下面是您更新的JSFIDLE,以演示我的意思。然后你可以简单地去更新标题和其他你需要的东西


你能在“booking/verzekeringen.html”中发布你的html吗?取决于你的电子量,我不会去获取,而只是简单地在循环中添加html。看看你能不能用JS摆弄一下你目前所拥有的东西。我会试试看,但是它有很多html,如果我直接把它放在循环中,那么一直都是“意外标记非法”,JSFIDLE没有代码。仅仅是一个合作会议的邀请;第一次我自己做了一个JSFIDLE。所以现在显示的标题应该是在HTML中加载到外部标题位置的标题。。。您可以将html变量放入函数中,然后在循环中调用它,并传入要设置的标题和其他值。然后简单地用值构建字符串并返回它。。。有什么主意吗?它在工作!htmlTemplate=htmlTemplate.replace(“TITLE”,TITLE);
$(".aantal-reizigers").change(function(){

    $(".reizigers-data").empty();
    $(".reizigers-verzekeringen").empty();
    var aantalReizigers = $(".aantal-reizigers").val();;
    var title="";
    var openclosedata="";
    var opencloseverzekeringen="";
    for (var i = 1; i <= aantalReizigers; i++) {

        if(i == 1){
            title = "hoofdreiziger";
            openclosedata='<div id="collapse'+i+'" class="panel-collapse in" style="height: auto;">';
            opencloseverzekeringen='<div id="collapseinsurance'+i+'" class="panel-collapse in" style="height: auto;">';
        }
        else{
            title = "reiziger "+i;
            openclosedata='<div id="collapse'+i+'" class="panel-collapse collapse">';
            opencloseverzekeringen='<div id="collapseinsurance'+i+'" class="panel-collapse collapse">';
        }

        $.get("booking/verzekeringen.html", function(html){
            html.replace("*TITLE*", title);<!--title is always the latest--> 
        })
        $(".reizigers-verzekeringen").append(
            '<p>'+title+'</p>'<!--this is going fine-->         
        );
    };
});
var htmlTemplate = "your html"