【问题标题】:Create an array from an each loop从每个循环创建一个数组
【发布时间】:2013-05-12 13:40:51
【问题描述】:

如何从每个循环中完成一个数组,然后使用 ajax 在帖子中传递它?现在它只是为每个元素创建一个数组,并且不会向 ajax 发布任何内容。

$('a#export').on('click',function(){

    $('[id^="imgHolder"], [id^="textHolder"]').each(function(){

        TextElementID = $(this,'[id^="textHolder"]').attr('id');
        TextElementContent = $(this,'[id^="textHolder"]').text();   

    TextObjects = new Array(TextElementID, TextElementContent);   

        ImgSrc = $('img',this,'[id^="imgHolder"]').attr('src');
        ImgHolderID = $(this,'[id^="imgHolder"]').attr('id');
        ImgHolderClass = $(this,'[id^="imgHolder"]').attr('class');            

    ImgObjects = new Array(ImgHolderID, ImgHolderClass, ImgSrc);

        });

        $.ajax({
            url: "post.php",
            type: "post",
            data: { 
                ExportObjects: ImgObjects
            },
            success: function(){
               alert("success");
            },
            error: function(){
                alert("failure");
            }   
              });

    });

【问题讨论】:

    标签: jquery arrays each


    【解决方案1】:

    这有几个问题。您正在初始化 each 中的数组,最终将覆盖这些值。此外,您正在对文本和图像执行 each,正在循环中收集文本和图像的值,最终会出现重复项。这是fiddle 的工作版本。

    var ImgObjects = new Array();
    $('[id^="imgHolder"]').each(function(){
        ImgSrc = $('img',this,'[id^="imgHolder"]').attr('src');
        ImgHolderID = $(this,'[id^="imgHolder"]').attr('id');
        ImgHolderClass = $(this,'[id^="imgHolder"]').attr('class');            
    ImgObjects.push(ImgHolderID, ImgHolderClass, ImgSrc);
        });
    
    var TextObjects = new Array();
    $('[id^="textHolder"]').each(function(){
        TextElementID = $(this,'[id^="textHolder"]').attr('id');
        TextElementContent = $(this,'[id^="textHolder"]').text();   
        TextObjects.push(TextElementID); 
        TextObjects.push(TextElementContent);
    });
    

    【讨论】:

    • 非常感谢!完全按照我的希望工作! + 给你!
    猜你喜欢
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 2012-09-21
    • 2013-01-07
    • 1970-01-01
    • 2015-06-29
    • 2015-02-04
    • 1970-01-01
    相关资源
    最近更新 更多