0
var resultValue = $("#"+temp+" .panId").val();
for(var i=0; i<totalPanel;i++) {
    $("#"+temp+" .panelDiv").append('<div class="panelDiv' + resultValue + '"></div>');
    $("#"+temp+" .panelDiv" +resultValue ).load("Panel.html #w", function(){
        $(".panelDiv"+(resultValue-1)+" .txtWidth").attr('rel',resultValue-1);
        $(".panelDiv"+(resultValue-1)+" .txtHeight").attr('rel',resultValue-1);
        $(".panelDiv"+(resultValue-1)+" .btnRemovePanel").attr('rel',resultValue-1);
    });
    resultValue++;
    $("#"+temp+" .panId").val(resultValue);
}

基本上我试图触发加载功能。在触发加载函数后,我想在每个函数中设置一个 rel <- 所以如果我的 for loop loop 5 time rel 将是 1 2 3 4 5 但现在它被设置为 5 5 5 5 5 因为 .loop 回调函数只执行循环完成后,它正在加载。因此我的值 resultValue 是该值的最大值。我如何通过设置 rel 1 2 3 4 5 来解决。

4

1 回答 1

0

找到了替代方案

$(document).ready(function(){
 $("body").on('change','.txtTotalHeight',function(){
  for(var i=0; i<totalPanel;i++) {
     test();

  }
 }
}
function test(){
var resultValue = $("#"+temp+" .panId").val();

    $("#"+temp+" .panelDiv").append('<div class="panelDiv' + resultValue + '"></div>');
    $("#"+temp+" .panelDiv" +resultValue ).load("Panel.html #w", function(){
        $(".panelDiv"+(resultValue-1)+" .txtWidth").attr('rel',resultValue-1);
        $(".panelDiv"+(resultValue-1)+" .txtHeight").attr('rel',resultValue-1);
        $(".panelDiv"+(resultValue-1)+" .btnRemovePanel").attr('rel',resultValue-1);
    });
    resultValue++;
    $("#"+temp+" .panId").val(resultValue);
}
于 2012-06-16T04:32:59.377 回答