每次调用函数lds时,我都在初始化数据表。函数lds为表提取数据并通过
附加相关的HTML<receiver
android:name=".ParseReceiver"
android:exported="false">
<intent-filter>
<action android:name="com.parse.push.intent.RECEIVE"/>
<action android:name="com.parse.push.intent.DELETE"/>
<action android:name="com.parse.push.intent.OPEN"/>
...
</intent-filter>
</receiver>
<receiver
android:name="com.parse.GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
<category android:name="at.a1telekom.android.newsroom"/>
</intent-filter>
</receiver>
之后我正在初始化像这样的数据表,
Parse.initialize(context, appId, clientKey);
ParsePush.subscribeInBackground( yourChannels, new SaveCallback() {...});
这解决了错误的问题&#34;数据表无法初始化&#34;如果我再次调用lds函数。但旧的行保留了以前附加的行。我尝试了以下方法:
将var table分配给Datatable的初始化,并将table.empty()放在lds的开头。但正如预期的那样,表变量是未定义的。
尝试删除行(0)而长度&gt; 0但是这会弄乱桌子并删除它。
尝试(&#39;#rTable&#39;)。empty()但由于此数据表引发了错误d [i]未定义。
每次调用函数lds时,我可以采取什么方法来清空行。
答案 0 :(得分:1)
按一下按钮销毁现有表格
var table = $('#myTable').DataTable();
$('#tableDestroy').on( 'click', function () {
table.destroy();
} );
从服务器重新加载完整的表格说明,包括列:
var table = $('#myTable').DataTable();
$('#submit').on( 'click', function () {
$.getJSON( 'newTable', null, function ( json ) {
table.destroy();
$('#myTable').empty(); // empty in case the columns change
table = $('#myTable').DataTable( {
columns: json.columns,
data: json.rows
} );
} );
} );