我怎样才能防止我的未隐藏htltablerows再次隐藏页面提交后

本文关键字:隐藏 htltablerows 提交 我的 | 更新日期: 2023-09-27 18:02:04

我使用一个HtmlButton使一些htltablerow已被隐藏可见。HtmlButton的创建和设置如下:

HtmlButton btnAddFoapalRow = null;
. . .
btnAddFoapalRow = new HtmlButton();
btnAddFoapalRow.Attributes["type"] = "button";
btnAddFoapalRow.InnerHtml = "+"; 
btnAddFoapalRow.ID = "btnAddFoapalRow";
this.Controls.Add(btnAddFoapalRow);

然后我以编程方式创建HtmlTableCells,将这些单元格添加到动态创建的htmltablecerows,然后将htmltablecerows添加到HtmlTable。

第3行和第4行开始时隐藏在蒲式耳下(可以这么说):

foapalrow3.Style["display"] = "none";
. . .
foapalrow4.Style["display"] = "none";

以上发生在服务器端/c#;我响应btnAddFoapalRow的点击在jQuery中使下一个隐藏行,只要有一个,unhidden/visible:

/* This makes the next hidden row visible, as long as there is one */
$(document).on("click", '[id$=btnAddFoapalRow]', function (e) {
    $('[id$=foapalhtmltable]').find('tr:hidden:first').show();
});

这个比Grace好用。问题是,当我提交表单,HtmlTable返回到只显示其初始的两行(标题行和一个数据行);我通过再次单击btnAddFoapalRow"go invisible"添加的一两个附加数据行(显然恢复为"display:none")。如果我重新单击btnAddFoapalRow,行重新出现与任何输入的数据仍然完好无损-所以他们没有真正86,他们只是害羞-但我怎么能防止这些行折叠/隐藏在所有?

我怎样才能防止我的未隐藏htltablerows再次隐藏页面提交后

按照@TrueBlueAussie在评论中所说的,你需要让表单已经提交的事实在页面加载中持续存在。

你可以在服务器端处理它(可能是DB Update)或者更简单,你可以用JavaScript创建一个cookie