简体   繁体   中英

jQuery assigning value to array giving error Undefined variable

I'm assigning values to array in forloop But it gives an error that array variable is undefine. following is my code.

$(document).ready(function(){

   $("#SubmitBtn").live('click',function(){

        var cnt = $("#TotalCnt").val();
        var data = [];

        for(var i=1; i<=cnt; i++)
        {
           var fname = $('#fname_'+i).val();
           var lname = $('#lname_'+i).val();
           var address = $('#address_'+i).val();

           data[i]["fname"] = fname;
           data[i]["lname"] = lname;
           data[i]["address"] = address;
        }

   });

}); 

when I'm assigning value to array it gives error "data[i] is undefined"

Try to create an empty object first, because initially data[i] is undefined . And undefined does not contains any property under it.

$(document).ready(function(){

   $("#SubmitBtn").live('click',function(){

        var cnt = $("#TotalCnt").val();
        var data = [];

        for(var i=1; i<=cnt; i++)
        {
           var fname = $('#fname_'+i).val();
           var lname = $('#lname_'+i).val();
           var address = $('#address_'+i).val();
           data[i] = {};
           data[i]["fname"] = fname;
           data[i]["lname"] = lname;
           data[i]["address"] = address;
        }

   });

});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM