简体   繁体   English

如何将数组发送到其他函数。(jQuery)

[英]How to send array to other function.(Jquery)

I want to send array to other function 我想将数组发送到其他功能

<div id="test"></div>
<div id="test2"></div>
<input type="button" value="chk" id="go" />
<script>
    $(function() 
    {
        var c = 1;
        var i = 5;
        var data = [[]];

        for ( c = 1 ; c <= i ; c++ )
        {
            data[c] = [];
            data[c]['proDetails'] = 'asdf'+c;
            data[c]['proDeCount'] = 'qwer'+c;
        }

        c=1;
        for ( c = 1 ; c <= i ; c++ )
        {
                $('#test').text($('#test').text() + " " + data[c]['proDetails'] + " " + data[c]['proDeCount']);
        }

        $('#go').click(function()
        {
            test(data);
        });
    })

    function test()
    {
        var c = 1;
        var i = 5;
        for ( c = 1 ; c <= i ; c++ )
        {
                $('#test2').text($('#test2').text() + " " + data[c]['proDetails'] + " " + data[c]['proDeCount']);
        }
    }
</script>

From this code <div id="test"></div> it can show data form array. 通过此代码<div id="test"></div>它可以显示数据表单数组。 But <div id="test2"></div> it can't show data from array. 但是<div id="test2"></div>它不能显示数组中的数据。 It has some error "ReferenceError: data is not defined" 它存在一些错误“ ReferenceError:未定义数据”

declaire it in function 在功能上贬低它

function test(data)
    {
        if(typeof data != 'undefined')
        {
            var c = 1;
            var i = 5;
            for ( c = 1 ; c <= i ; c++ )
            {
                $('#test2').text($('#test2').text() + " " + data[c]['proDetails'] + " " + data[c]['proDeCount']);
            }
        }
    }

other thing you can do is global the var like: 您可以做的另一件事是像var这样的全局变量:

<script>
var data = [[]]; // <---- here
    $(function() 
    {
        var c = 1;
        var i = 5;


        for ( c = 1 ; c <= i ; c++ )
        {
            data[c] = [];
            data[c]['proDetails'] = 'asdf'+c;
            data[c]['proDeCount'] = 'qwer'+c;
        }

        c=1;
        for ( c = 1 ; c <= i ; c++ )
        {
                $('#test').text($('#test').text() + " " + data[c]['proDetails'] + " " + data[c]['proDeCount']);
        }

        $('#go').click(function()
        {
            test(data);
        });
    })

    function test()
    {
        var c = 1;
        var i = 5;
        for ( c = 1 ; c <= i ; c++ )
        {
                $('#test2').text($('#test2').text() + " " + data[c]['proDetails'] + " " + data[c]['proDeCount']);
        }
    }
</script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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