清除后如何附加数据

时间:2018-03-28 06:09:07

标签: javascript php jquery append

我必须通过点击按钮

逐个追加数据
$(document).ready(function() {
      var i = 0;
      $("#add_row").click(function() {
          $('#addr' + i).html("<td>" + (i + 1) + "</td><td><select id='myselect" + i + "' name='job_id[]" + i + "' class='form-control'><option value=''>Select the Job</option><?php 
              $mysql = "select * from ca_job where job_status != 'Closed' and job_customer_name = '".$com_id.
              "'"; $result1 = mysql_query($mysql) or die(mysql_error());
              while ($roww = mysql_fetch_array($result1)) {
                  $sql = "select * from `ca_job_type` where `jtype_id`= '".$roww['job_type'].
                  "'";
                  $res = mysql_query($sql) or die(mysql_error());
                  $row1 = mysql_fetch_array($res);
                  echo '<option value='.$roww['job_id'].
                  ' selected>'.$roww['job_id'].
                  '-'.$row1['job_type_name'].
                  '</option>';
              } ? > < /select></td > < td > < input name = 'invoice_description[]"+i+"'
              type = 'text'
              placeholder = 'invoice_description'
              class = 'form-control input-md'
              id = 'invoice_description' / > < /td><td><input name='sac_hsc_code[]"+i+"' type='text' placeholder='sac_hsc_code' class='form-control input-md'id='sac_hsc_code' / > < /td><td><select id='employee' name='tax_id[]"+i+"' class='form-control'><option value=''>Please select</option > <?php
            $sql = "select tax_id, tax_type, tax_comp, tax_Percent FROM ca_taxmaster where tax_comp = '0'";
            $resultset = mysql_query($sql) or die(mysql_error());
            while($rows = mysql_fetch_array($resultset)) { echo '<option value='.$rows['tax_id'].' selected>'.$rows['tax_type'].'</option>'; } ?> < /select></td > < td > < input name = 'amount[]"+i+"'
              type = 'text'
              placeholder = 'amount'
              class = 'form-control input-md' / > < /td>"
          );

我发布的上面的源代码是多种输入类型,但是在为第一个列表选择id ='myselect'的下拉列表之后,如果按下上面的按下(+)按钮,则显示值,并显示最后一个仅数据,但我需要第一行和第二行的值。

          $(document).ready(function() {
              $('#myselect' + i).change(function() {
                  var job_id = $(this).find(":selected").val();
                  var dataString = 'job_id=' + job_id;
                  $.ajax({
                      url: '<?=base_url(); ?>ajax/getjob.php',
                      dataType: "json",
                      data: dataString,
                      cache: false,
                      success: function(employeeData) {
                          $('.appendData').empty();
                          if (employeeData) {
                              $("#dvPassport").show();
                              $("#dvPassport1").hide();
                              var myselect = [employeeData];
                              employeeData.forEach(function(item) {
                                  var data = '<tr>';
                                  data += '<td>' + item.job_id + '</td>';
                                  data += '<td>' + item.disburse_Date + '</td>';
                                  data += '<td align="right">' + item.approved_amount + '</td>';
                                  data += '</tr>';
                                  $('.appendData').append(data);
                              });
                          } else {
                              $("#dvPassport").hide();
                              $("#dvPassport1").show();
                          } //else
                      }
                  });
              });
          });

          $('#tab_logic').append('<tr id="addr' + (i + 1) + '"></tr>');
          i++;
      });

      $("#delete_row").click(function() {
          if (i > 1) {
              $("#addr" + (i - 1)).html('');
              i--;
          }
      });

  });

Please click here to get clear view

在上面的图片中,如果我选择下拉列表显示两个值,我按下+按钮并选择第二个下拉列表,第一个值被清除并显示我在最后一个下拉列表中选择的第二个值。但我需要第一次下拉和第二次下拉的值。如果有人遇到这个问题,请帮助我。谢谢。提前谢谢。

1 个答案:

答案 0 :(得分:0)

我不会放弃你想要实现的目标,但是你忘记了下拉列表中的值,这可能会解决你的问题

更改

echo '<option value='.$roww['job_id'].' selected>'.$roww['job_id'].

echo '<option value="'.$roww['job_id'].'" selected>'.$roww['job_id'].

echo '<option value='.$rows['tax_id'].' selected>'.$rows['tax_type'].'</option>';

echo '<option value="'.$rows['tax_id'].'" selected>'.$rows['tax_type'].'</option>';

旁边

  1. 你应该考虑很好地编写你的代码,它很难阅读和理解,因此很难调试
  2. 尝试离婚你的来源,尽量不混合php,html和javascript。可以这样使用它,但它也是一个巨大的错误来源,很难维护
  3. 使用mysqli函数代替mysql - &gt; MySQL Improved Extension