为每个jQuery添加多个函数值

Add muiltple values from function to each jQuery

本文关键字:函数 jQuery 添加      更新时间:2023-09-26

我有下面这是在这个提琴。http://jsfiddle.net/7YFHX/

            <ul></ul>
            <script>
            function test() {
                var myNum = [1,2,3,4,5],
                    myNumTxt = ['one','two','three','four','five'];
                return [myNum, myNumTxt];
            }
            var myTest = test(),
                myTestNum = myTest[0],
                myTestNumTxt = myTest[1];
            console.log(myTestNum);
            console.log(myTestNumTxt);

            $.each(myTest, function (index, value) {
                $("ul").append('<li title="' + value[1] + '">' + value[0] + '</li>');
            });
            </script>

我想返回的是数组中每个项目的列表项,myNumTxt显示在标题文本中,如下所示。

            <ul>
            <li title="one">1</li>
            <li title="two">2</li>
            <li title="three">3</li>
            <li title="four">4</li>
            <li title="five">5</li>
            </ul>

目前我正在返回以下内容。

            <ul>
            <li title="2">1</li>
            <li title="two">one</li>
            </ul>

我在这里做错了什么?我如何为每个返回两个值?

如何使用for循环如下:

var myTest = test();
for(var i = 0; i < myTest[0].length; i++){
    $("ul").append('<li title="' + myTest[1][i] + '">' + myTest[0][i] + '</li>');
}

您正在通过myTest功能each。这就是问题所在。试试这个:

$.each(myTestNum, function (index, value) {
    $("ul").append('<li title="' + myTestNumTxt[index] + '">' + value + '</li>');
});
You can do it like this way,   

var listItems={};
var myNum = [1,2,3,4,5];
var myNumTxt = ['one','two','three','four','five'];
$.each(myNum, function(index,value){
    createHash(myNumTxt[index],myNum[index])
});

function createHash(key,value){
    listItems[key]=value;
}
$.each(listItems, function (key, value) {
    $("ul").append('<li title="' + key + '">' + value + '</li>');
});