php - 通过 ajax 将表格行作为 HTML 代码返回并添加到表格中

标签 php javascript jquery ajax codeigniter

我正在编写一个应用程序,该应用程序根据id从数据库中获取数据。给定并返回表中的行,它是一个条形码计费模块,它 .append行作为给定的条形码字符串,但是当我返回表 row as a HTML 时我面临的问题代码<tr>..</tr> ,通过ajax我看不到在我的 table 上打印(添加)的新表格行。

这是我的观点:

 <table class="table table-bordered">


              <thead>
                <tr>
                  <th>S No.</th>
                  <th>Particular</th>
                  <th>QTY</th>
                  <th>Cost</th>
                <th>Discount</th>
                <th>Discard</th>


                </tr>
              </thead>

               <tbody class="todo_list">
               <?php echo $list;?>
             <input type="hidden" name="bill_ref" value="<?php echo $bill_ref ?>"/>
             <input type="hidden" name="date" value="<?php echo $date ?>"/>

               </tbody>
               <?php echo $total_bill; ?> 

                <div id="bill_tbl">
                      <--!MY NEW ROW SUPPOSED TO BE ADDED HERE!-->
            </div>
            </table>

我的ajax JS:

 <script type="text/javascript">
$(document).ready(function(){


               $("#c_id").change(function(){
                     var send_data=$("#c_id").val();
                     $.ajax({
                        type:"post",
                        url:"billing_table",
                        dataType: "html",

                        data:"i_id_post="+send_data,
                        success:function(data){
                              $("#bill_tbl")..after(data);

                        }

                     });
               });
           });
</script>

和我的 Controller (出于测试目的,我正在 Controller 中操作我的数据库部分,对此我感到抱歉):

public function billing_table()
    {
    $b_barcodestring=$this->input->post('b_barcodestring');
    $i_id=$this->input->post('i_id_post');
    if($i_id==''&& $b_barcodestring!='')
    {

    echo $b_barcodestring;

    }
    else if($b_barcodestring=='' && $i_id!='' )
    {


    //i want to print sumple this dummy row in my table
    echo '<tr ><input type="hidden" name="counter[]" value="ssss"></tr><tr ><td>+counter+</td>  <input type="hidden" name="particular[]" value="Greting Card" ><td>'.$i_id.'</td>  <td>  <input type="number" name="qty[]" value="+qty_cal+"></td> <td> <input type="hidden" name="cost[]" value="150" >150</td> <td><input type="hidden" name="discount[]" value="N/A">N/A</input></td> <td ><button class="btn btn-danger"><i class="icon-remove icon-white"></i>Delete</button></td></tr>';
    }

    $this->output->enable_profiler(TRUE);
    }

这是FIDDLE .

最佳答案

更改 JS 函数中的以下行

success:function(data){
      //$("#bill_tbl")..after(data);
      $(".table").append(data);
}

从表中删除 div#bill_tbl

关于php - 通过 ajax 将表格行作为 HTML 代码返回并添加到表格中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18054008/

相关文章:

javascript - 如何在 jQuery 中获取所有动态设置的内联样式 CSS?

php - Ubuntu cron 没有执行,但在命令行上工作正常

javascript - 我可以用一个以上的参数映射一个函数吗?

javascript - 如何在 maquettejs 中的映射组件中使用函数

javascript - 是否可以使用 javascript 从另一个域/服务器下载 JSON 对象?

javascript - 随处使用函数,无需多次编写

html按钮中的javascript箭头键移动

javascript - 在 PHP 中发布选项文本而不是值

php - 获取两个 MySQL 表的不同值

php - MySQL在一个查询中应用多个条件