jquery追加+代码隐藏
-
07-07-2019 - |
题
我使用jquery:
动态地向divStaff添加行$("span[id$='lblAddStaff']").click(function() {
//$(".staff_tpl").find("input[id$='txtRate']").val("0,00");
var staff_row = $(".staff_tpl");
staff_row.find(".staff_row").attr("id", "Emp" + counter);
$("div[id$='divStaff']").append(staff_row.html());
counter += 1;
});
我正在添加的行位于隐藏的div中,其中class = <!> quot; .staff_tpl <!> quot; 我将此div的内容附加到divStaff
当我提交页面(回发)时,如果我尝试显示它,结果divStaff总是为空:
lblTest.Text = divStaff.innerHtml.ToString
基本上,我正在操作div客户端,我想通过我的aspx页面的代码隐藏来访问服务器端。我想我在这里错过了一个基本原则。
解决方案
这是不可能的。
如果要访问您在页面上创建的数据,则必须将其放在输入字段(可能是隐藏的)中,并在使用Request.Form["MyHiddenFieldName"]
发布后访问它。
<div>
s未发布到服务器。 runat="server"
元素在ViewState中被灌输(一个大字符串,真的 - 你可以在你的页面的源代码中看到它),给出连续性的抽象(或它的幻觉)。但是,这种刺痛并不知道您在DOM中所做的更改
处理<input>
元素时,您将看到您在服务器端上所做的最后一次更改,但客户端更改已消失。
只有<=> (以及文本区域,选项等)值在提交时发布到服务器,因此在页面发布后,将在服务器上显示在客户端上更改这些值。
不隶属于 StackOverflow