Jquery没有为htmlstring更新.html()

时间:2016-08-31 06:46:55

标签: javascript jquery html jquery-plugins

我有一组html字符串,想要使用我已经构建的plungin更新字符串dynamicical的值。

基本上我的plungin这样做,当我调用它时,它将使用$(this).html(newValue)规范化数字并绑定到html。但是当我调用插件来处理这个html字符串时它没有绑定值

这是我的html字符串

 var htmlData = '<div class="clearfix">';
 $.each(data, function(key, value) {
       htmlData += '<div class="large-1 infographic-box border_right merged-top pull-left widget-data" >';
       $.each(value,function(dKey,dValue){

             htmlData += '<span id="'+dKey+'['+ key +']"  class="'+dKey+' value widget-data" data-value="'+dValue+'">'+ dValue  +'</span>';
                })
             htmlData += '<span class="headline">'+ monthNames[parseInt(key)-1] +'</span>'+
                                 '</div>';
            });
             htmlData += '</div>';
 $('.transaction-section').html(htmlData);
在此之后我打电话给我的插话

$(htmlData).find('.widget-data').each(function(){
                var value = $(this).text();
                $(this).siPrifixx(value,{
                    maxDigits: 4,
                    seperator: true,
                    decimal: 1,
                    popUp: true,
        });
 });

但值仍然相同,没有变化。我的代码出了什么问题。谁能帮我解决这个问题呢?

在调用插件dValue之前有人认为是1500000,我在我的插件中将其规范化为1.5M并且它将覆盖html值。但是在这种情况下它不起作用,但是我的插件处理数据,不使用$(this).html(newvalue)附加值。newvalue是格式化值1500000 to 1.5M

1 个答案:

答案 0 :(得分:0)

我已经完成了它并找到了这个。

 $.each(data, function(key, value) {
                  htmlData += '<div class="large-1 infographic-box border_right merged-top   pull-left " >';
                $.each(value,function(dKey,dValue){
                    htmlData += '<span id="'+dKey+'['+ key +']"  class="'+dKey+' value  widget-data" data-value="'+dValue+'"  >'+ dValue +'</span>';   
                });
                    htmlData += '<span class="headline">'+ monthNames[parseInt(key)-1] +'</span></div>';
            });
            htmlData += '</div>';

            $('.transaction-section').html(htmlData);
            $('.widget-data').each(function(){
            var value = $(this).data('value');
            var index = $(this).attr('id');
                $(this).siPrifixx(value,{
                    maxDigits: 4,
                    seperator: true,
                    decimal: 3,
                    popUp: true,
                    countUp:index
                    })
            });

感谢每一个帮助我的人!