我使用jQuery将行添加到html表中,但是当我刷新浏览器时,行会消失。如何让行保留?
<TABLE id="dataTable" width="100%" align="center">
<TR align="center" border="1">
<TH></TH>
<TH>ID </TH>
<TH>Name</TH>
<TH>Status</TH>
</TR>
<TR align="center">
<TD><INPUT type="checkbox" name="chk"/></TD>
<TD> 1 </TD>
<TD> <INPUT type="text" value="Submission 1" /> </TD>
<TD>Working version</TD>
</TR>
</TABLE>
<script type="text/javascript">
$(document).ready(function(){
$('#createNew').click(function() {
var table = document.getElementById('dataTable');
var rowCount = table.rows.length;
$('#dataTable tr:last').after('<TR align="center"><TD><INPUT type="checkbox" name="chk"/></TD><TD>'+ rowCount + '</TD><TD> <INPUT type="text" value="Submission 1" /> </TD><TD>Working version</TD></TR>');
答案 0 :(得分:0)
只有jQuery你不能。
例如,您需要在数据库中保存更改。
编辑:或者你可以使用php,$ _SESSION,$ _COOKIE ....我不知道,你有很多方法,但不是只有jQuery。
答案 1 :(得分:0)
这取决于您从何处获取数据以创建表格。如果要从数据库中检索数据并将其粘贴到tablem中,则需要使用jquery通过进行ajax回调将数据插入数据库。
答案 2 :(得分:0)
您可以使用.data
函数将数据绑定到表中,然后尽可能多地复制它? .data
会阻止内存泄漏的数据,您可以在api.jquery.com
答案 3 :(得分:0)
这只是一个建议,但您可以尝试将新行存储在cookie中,如下所示:
how to store an array in jquery cookie?
这种方式在页面刷新之后您将获得您的行(当然,您需要读取cookie并在再次加载页面时添加行)。
但最好的解决方案是使用服务器端代码将新行存储到数据库中,并在每次刷新页面时加载它们,这样每个访问该页面的人都可以看到新记录(或仅针对特定用户如果您要添加用户标识,但这有点不对您的问题。)
从@Kell回答检查文章,这很容易实现:)