【问题标题】:Replace table row with JQuery用 JQuery 替换表格行
【发布时间】:2017-09-29 08:16:22
【问题描述】:

我在替换 JQuery 中的行时遇到错误。这是我的 JQuery 代码 sn-p:

var newtr = '<td>'+data.row.createdDate+'</td>'+
                            '<td>'+data.row.emergencyOrderID+'</td>'+
                            '<td>'+data.row.firstName+' '+data.row.lastName+'</td>'+
                            '<td>('+data.row.latitude+','+data.row.longitude+')</td>'+
                            '<td>'+data.row.pickupLocation+'</td>'+
                            '<td>'+data.row.hospitalName+'</td>'+
                            '<td>'+data.row.driverName+'</td>'+
                            '<td>'+data.row.emergencyStatus+'</td>';
               //$('#tbIDOrder-'+data.row.emergencyOrderID).html('test');
               //alert('#tbIDOrder-'+data.row.emergencyOrderID);
                $('#tbIDOrder-'+data.row.emergencyOrderID).parent().replaceWith(newtr);

这是我的行:

<tr id="tbIDOrder-{{$o->EmergencyOrderID}}">
    <td>{{ $o->CreatedDate }}</td>
    <td>{{ $o->EmergencyOrderID }}</td>
    <td>{{ $o->FirstName }} {{ $o->LastName }}</td>

    <td>({{ $o->Latitude }}),  ({{ $o->Longitude }})</td>
    <td>{{ $o->PickupLocation }}</td>
    <td>{{ $o->HospitalName}}</td>
    <td>{{ $o->DriverName}}</td>
    <td>{{ $o->EmergencyStatus }}</td>
</tr>

我错过了什么吗?如果有帮助,我在 Laravel 中使用 Pusher 运行此代码 :) 感谢您抽出宝贵时间。

编辑: 我将脚本替换为:

$('#tbIDOrder-'+data.row.emergencyOrderID).html(newtr);

但是还是不行

【问题讨论】:

  • $('#tbIDOrder-'+data.row.emergencyOrderID) 是该行。然后.parent() 将成为&lt;tbody&gt;。您正在将完整的 &lt;tbody&gt; 替换为 &lt;td&gt;s
  • I encountered an error - 它是什么?你的意思是它根本不起作用?会发生什么?
  • 好的,我删除了父级(但它仍然不起作用.. 是的,不知何故没有错误,但我用于替换表格行数据的 javascript 不起作用。

标签: javascript jquery html laravel crud


【解决方案1】:

由于$('#tbIDOrder-'+data.row.emergencyOrderID)指的是TR,您可以直接使用.html(htmlString)更新内容。

$('#tbIDOrder-'+data.row.emergencyOrderID).html(newtr);

这是一个例子

$('#tbIDOrder-1').html('&lt;td&gt;New Date&lt;/td&gt;');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
  <tr id="tbIDOrder-1">
    <td>CreatedDate</td>
  </tr>
</table>

【讨论】:

  • @Cookie,应该
  • 有什么办法可以再次检查吗?如果它有助于我在 laravel 中使用 Pusher 运行它,那么它应该在触发时被广播替换..
  • 您生成的ID 是否正确?执行console.log($('#tbIDOrder-'+data.row.emergencyOrderID').length) 来检查元素是否存在
猜你喜欢
  • 2011-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-16
  • 1970-01-01
  • 1970-01-01
  • 2011-03-06
相关资源
最近更新 更多