求教:$each()用法的正确姿势?

苏子晨
  • 145
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
        <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js" type="text/javascript"></script>
    </head>
    <body>
        <form>
            <label>
                <input id="txt" type="text" name="UserName" placeholder="请输入姓名">性别:
                <select id="sex">
                    <option>女</option>
                    <option>男</option>
                </select>
            </label>
            <input id="show-btn" type="button" value="显示数据">
        </form>
        <ul id="list"></ul>

    <script>
        var json=[{
            "name": $("#txt").val(),
            "sex": $("#sex").val()
        }];
        $("#show-btn").click(function(){
            $.each(json,function(i){

                $("#list").append("<li>姓名:"+json[i].name+" 性别:"+json[i].sex+"</li>");    

            });
        });

    </script>
    </body>
</html>

图片描述

回复
阅读 1.6k
2 个回答
✓ 已被采纳

请把 var json=[xxxxx] ;
这句 放进click function里面

    $("#show-btn").click(function(){
      var json=[{
        "name": $("#txt").val(),
        "sex": $("#sex").val()
    }];
        $.each(json,function(i){

            $("#list").append("<li>姓名:"+json[i].name+" 性别:"+json[i].sex+"</li>");    

        });
    });
canaan
  • 275

楼主是不是问题没有描述清楚? 我以为你说的是 each的用法

======================================================
你是不想在回调中使用下标的意思吗?
图片描述
上图是JQuery的each方法
你再回调中使用this可以获取当前循环到的对象
或者在回调中使用第二个参数

宣传栏