jQuery Mobile Foo Tableで少し助けが必要です。テーブルにデータを動的に追加しています。
HTML:
<table id="tblSRNDetails" class="footable">
<thead>
<tr>
<th data-class="expand">SRN</th>
<th >Failure Date</th>
<th >Complaint Report Date</th>
<th>Promised Date</th>
<th >Customer Name</th>
<th >Log Time</th>
<th >Create FSR</th>
<th data-hide="phone,tablet">Days Open</th>
<th data-hide="phone,tablet">SRN Allocated Time</th>
<th data-hide="phone,tablet"> SRN Status</th>
<th data-hide="phone,tablet"> ESN Number</th>
<th data-hide="phone,tablet"> Request Type</th>
<th data-hide="phone,tablet">Service Request Details</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
js コード:
$("#page-id").live('pagebeforeshow', function() {
console.log("Page before show");
$("#tblSRNDetails > tbody tr").remove();
for (var indx = 0; indx < 2; indx++ )
{
$("#tblSRNDetails > tbody").append("<tr>"+
"<td>Name</td>"+
"<td>failureDate</td>"+
"<td>complaintReportDate</td>"+
"<td>promisedDate</td>"+
"<td>custName</td>"+
"<td><a href='#'><b>Log Time</b></a></td>"+
"<td><b>Create FSR</b></td>"+
"<td>daysOpen</td>"+
"<td>allocatedTime</td>"+
"<td>srn_status</td>"+
"<td>ESNNumber</td>"+
"<td>requestType</td>"+
"<td>customerComplaint</td>"+
"</tr>");
}
$('#tblSRNDetails').footable();
});
これにより、初めて開いたときに FooTable が適切に適用されます。ホームページ ボタンをクリックして戻り、そのページに再びアクセスすると、FooTable が正しく適用されません。
スクリーンショット:
その際、私が直面している問題には次のようなものがあります。
非表示のフィールドが表示されます。(Footable が適用されていないことを意味します): この問題は、デバイスの向きを 2 回変更すると解決します。
最初のフィールドにはデータ展開ボタンが含まれなくなりました (フッタブルが適用されないことを意味します):
問題は、古い行を削除して新しい行を追加しているためだと思います。remove 呼び出しを行わずに試しました。その時点で、古い行は適切に表示されていました。スクリーンショットに示すように、新しく追加されたフィールドに問題がありました。
誰かがこれで私を助けることができますか?
PS: これを Android WebView でレンダリングしています。また、ブラウザでも同じ問題が再現されます。