jQuery 在 onchange 期间重置单个表
jQuery reset a single table during onchange
我有一个表格如下。如何在更改期间使用 jQuery 将表重置为其原始状态(所有 th,tds)。不要重新加载整个页面,因为我还有另一个表。我尝试使用数据表,但它不必要地添加了搜索过滤器和分页
<table class="table table-bordered table-hover table-sm" id="t01">
<thead style="text-align:center">
<tr>
<th class="col-md-6" style="text-align:center">Dxx</th>
<th class="col-md-2" style="text-align:center">Rxx/Unit</th>
<th class="col-md-2" style="text-align:center">Txxx</th>
<th class="col-md-2" style="text-align:center">Pxxx</th>
</tr>
</thead>
<tbody>
<tr>
<th>Full</th>
<td id="fp" style="text-align:right">0</td>
<td id="fr" style="text-align:center">0</td>
<td>
<div style="float:left">$</div>
<div style="float:right" id="fpT">0.00</div>
</td>
</tr>
<tr>
<th >Fractional</th>
<td id="fr" style="text-align:right">0</td>
<td id="frN" style="text-align:center">0</td>
<td>
<div style="float:left">$</div>
<div id="frT" style="float:right">0.00</div>
</td>
</tr>
<tr>
<th >Premium</th>
<td id="pRate" style="text-align:right">0</td>
<td id="pNos" style="text-align:center">0%</td>
<td>
<div style="float:left">$</div>
<div id="pTotal" style="float:right">0.00</div>
</td>
</tr>
<tr class="active">
<th>Premium Discount</th>
<td style="text-align:right" id="premium-discount-rate">0</td>
<td style="text-align:center">
<select id="premium-disc-list">
<option value=""></option>
</select>
</td>
<td>
<div style="float:left">$</div>
<div style="float:right" id="premium-discount-total">0.00</div>
</td>
</tr>
</tbody>
</table>
jQuery
var table = $('#t01').dataTable();
//table.clear().draw();
//table.fnClearTable();
//table.fnDraw();
//table.fnDestroy();
//table.fnDraw();
我脑海中有两个选择:
1)你可以用一些"可重辨"类标记所有可以重置的元素并添加data-original-val
属性,一旦你决定重置它,就做这样的事情:
$('.resetable','#t01').each(function(){
var originalVal = $(this).data('original-val');
$(this).html(originalVal);
})
2) 在脚本中呈现表的另一个副本type="text/html"
如下所示:
<script type="text/html" id="t01-original">
<table class="table table-bordered table-hover table-sm" id="t01">
<thead style="text-align:center">
<tr>
<th class="col-md-6" style="text-align:center">Dxx</th>
<th class="col-md-2" style="text-align:center">Rxx/Unit</th>
<th class="col-md-2" style="text-align:center">Txxx</th>
<th class="col-md-2" style="text-align:center">Pxxx</th>
</tr>
</thead>
...
</table>
</script>
这样,就不会解析脚本标记的所有内容,也不会有重复的 ID 问题。在重置时,只需将表的内容替换为脚本中的内容:
//t01-container is the id of div that wraps the table:
$( '#t01-container').html($('#t01-original').html());
相关文章:
- 如何使用单个表单填写多个表单
- 引用单个表的多列 - Sails JS API 模型
- jQuery 在 onchange 期间重置单个表
- 针对各种选择框更改验证单个表单的特定字段-jQuery
- Javascript表单验证-如何在单个表中显示验证错误,而不是使用警报
- 通过单击Href将单个表单值发布到自身
- 是为大约100条记录中的每一条呈现一个表单更快,还是用ajax加载单个表单更快
- 使用 Javascript 将表拆分为具有一行的单个表
- 将选择菜单连接成单个表单输入
- 通过按键提交单个表单元素
- AngularJS在ng重复中选择单个表单元格
- 在单个表单中从下拉列表中多次提交
- jQueryAjax请求仅适用于单个表单提交
- 如何提交单个表单并使用两个提交按钮一个按钮单击然后验证
- 在提交整个表单之前,我可以将单个表单值提交到数据库中吗
- 在单个表单中使用2个提交按钮
- 清除HTML中的单个表单字段
- 在单个表中循环更改url不起作用
- 如何在具有Ajax的单个表单中使用多个Submit按钮
- 我们可以对单个表的每个tr使用表单吗?和方式