【问题标题】:how to append data after clear清除后如何追加数据
【发布时间】:2018-09-06 17:05:36
【问题描述】:

我必须通过单击按钮一一追加数据

$(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

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

【问题讨论】:

  • 请格式化您的代码。用户无法读取您的代码
  • 如前所述...格式化您的代码,以便愿意提供帮助的用户能够阅读 ist...现在一团糟
  • 我编辑了 bob 并且能够查看。你们遇到了什么问题
  • 你真的需要一些认真的代码重构,如果写这样的代码你会加倍努力。请检查您的策略并尝试采取明智的方法,这样您会遇到更少的问题并能够提高工作效率

标签: javascript php jquery append


【解决方案1】:

我不确定您要达到的目标,但您忘记了下拉列表中的值的一些勾号,这可能会解决您的问题

改变

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 -> MySQL Improved Extension

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-03
    • 1970-01-01
    • 1970-01-01
    • 2018-02-10
    • 1970-01-01
    • 1970-01-01
    • 2019-09-29
    • 1970-01-01
    相关资源
    最近更新 更多