【发布时间】:2015-03-20 16:31:18
【问题描述】:
我试图达到的目标。在更改事件中,html 正在更改。取决于选择的值,html 片段需要加载与值一样多的时间。在这些 html 中,我需要用我的 for 循环的 var i 和其他一些 var 替换一些变量。 (用于后端 shizzle)。最终的 html 需要附加在一个 div 上。
问题是当我尝试访问 $.get() 或 $.load() 函数中的变量时,它总是使用最新的变量。当我像这样访问附加函数中的变量时,一切都按原样进行
$('.reizigers-verzekeringen').append('<p>'+title+'</p>);
加载并需要替换的示例(在**之间):
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title"><a data-toggle="collapse" data-parent="#accordion" href="#collapseinsurance*i*" class=""> Verzekeringen *TITLE* <i class="fa fa-plus pull-right"></i></a></h4>
</div>
</div>
完整代码...
$(".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-->
);
};
});
【问题讨论】:
-
您能否在“booking/verzekeringen.html”中发布您的 html - 取决于您的数量,我不会执行获取,而只是在循环中添加 HTML。看看你能不能用你目前拥有的东西做一个 JS Fiddle。
-
我会尝试,但它有很多 html,如果我直接将它放在循环中,那么整个时间都是“意外令牌非法”
-
JSFiddle 没有代码。只是一个协作会议的邀请。
-
借口;我第一次自己做一个 jsFiddle。所以现在显示的标题应该是在 TITLE 位置外部加载的 HTML 中的标题...jsfiddle.net/q0jy260L
标签: javascript jquery html replace load