ajax / jquery从数据库和数据库中提取数据从下拉菜单中选择价值

时间:2013-05-26 09:01:57

标签: jquery ajax

Jsfiddle

我很难用这个......让我解释一下

我使用ajax从db中提取数据并将其附加到dataHolder div - 直到现在每件事都没问题 - 每个用户都有年 - 月 -

现在如果想为第一个用户彼此提供新的日期 - 当我点击确认标签时,我选择年,月,日(这项工作仅针对第一个用户)

现在,如果我想为第二个用户给出新的日期,那么我点击确认 一个标签我只选择客户端ID - 但是对于年份和月份和日期都不是

anyhelp please guys

//警报(年+月+日+ cid);仅输出用户cid

让我向您展示更好理解的代码

$(document).ready(function() {

    $("#dataHolder").on('click', '.set', function() {

        var cid = $(this).attr('id')
        var year = $('#year').val();
        var month = $('#month').val();
        var day = $('#day').val();

        //alert( year + month + day + cid);

        $.ajax({
            url: 'confirm.php?id=' + cid + '&year=' + year + '&month=' + month + '&day=' + day,
            type: "POST",
            success: function(response) {
                console.log(response)
            }
        });
    });

    $('#btn').hide();

    $('#myform').on('change', function(e) {

        e.preventDefault();

        var select = $('#select').val();
        // ** console.log(select);

        var datasholder = $('#dataHolder').html('');

        $.ajax({
            type: 'POST',
            url: 'proccess.php',
            data: $(this).serialize(),
            success: function(data) {
                datasholder.append(data);
            }
        })
    })
})

// **数据拉出

之后
<div id="dataHolder">

    <table class="tablesorter bordered" id="myTable">
        <thead>
            <tr> 
                <th>No.</th>     
                <th>Client Name:</th>

            </tr>
        </thead>
        <tbody>
            <tr>
                <td>1</td>        
                <td>mohammed fathi</td>
                <td>

                    <input type="text" id="year" name="year" maxlength="4">&nbsp;

                    <select id="month" name="month">

                        <option value="">Select...</option>
                        <option value="01">January</option> 

                    </select>&nbsp;

                    <select style="width: 60px;" id="day" name="day">

                        <option value="">--</option>
                        <option value="01">01</option>
                        <option value="02">02</option>

                    </select>&nbsp;

                    <a style="cursor: pointer;" class="set" id="1">Confirm</a>  // ** confrim   
                </td>           
            </tr>  


            <tr>
                <td>1</td>        
                <td>mohammed fathi</td>
                <td>

                    <input type="text" id="year" name="year" maxlength="4">&nbsp;

                    <select id="month" name="month">

                        <option value="">Select...</option>
                        <option value="01">Jan</option> 
                        <option value="01">Feb</option> 

                    </select>&nbsp;

                    <select style="width: 60px;" id="day" name="day">

                        <option value="">--</option>
                        <option value="01">01</option>
                        <option value="02">02</option>

                    </select>&nbsp;

                    <a style="cursor: pointer;" class="set" id="2">Confirm</a>  // ** confrim   
                </td>           
            </tr> 


        </tbody>  
    </table>
</div>

//////// * **** 第二次更新

$( “#dataHolder”)。在( '点击', '设置',函数(){

              // do something

                 //var cid   = $(this).attr('id')
                 //var year  = $('#year').val();
                 //var month = $('#month').val();
                 //var day   = $('#day').val();

              var cid   = $(this).attr('id')
              var year  = $(this).siblings('.year').val();
              var month = $(this).siblings('.month').val();
              var day   = $(this).siblings('.day').val();


             alert( year + month + day + cid);

             $.ajax({
                url: 'confirm.php?id='+cid+'&year='+year+'&month='+month+'&day='+day, 
                type: "POST",
                success: function( response ){
                    console.log( response )
               }
            }); 
    });

1 个答案:

答案 0 :(得分:0)

您不能在每行中使用相同的ID。将id="year"更改为class="year"(月和日相同)。然后将代码更改为:

 var cid   = $(this).attr('id');
 var year  = $(this).siblings('.year').val();
 var month = $(this).siblings('.month').val();
 var day   = $(this).siblings('.day').val();