我有一个 html 元素:
<div id="myElement" class="someClass" onclick="setText(this.innerHtml)" runat="server">text</div>
我希望能够使用一些 jquery 在客户端更改此元素,如下所示:
function setText(text) {
$(".someClass").text(text);
}
--或--
function setAttribute(text) {
$(".someClass").attr("myAttr",text);
}
一旦我这样做,我想获取该元素的新文本或新属性,然后存储服务器端或的值。我应该注意到,然后我使用 LinkButton 回发到服务器。此时,当我查看该元素时,默认文本仍然存在,或者我添加的新属性丢失了。
有人可以解释为什么该元素没有在服务器上更新以及我如何获取它吗?
最佳答案
我相信您面临的问题是由于您使用的 html 元素的类型(div)造成的。如果您只是将 div 替换为“文本”类型的输入,它将按您的预期工作,允许您在回发时读取值。在表单提交/回发期间仅发送表单元素。
基于网络的所见即所得文本编辑器的工作原理就是一个例子。您在 div 中键入和编辑,但在后台您所做的所有更改都存储在隐藏字段中。该隐藏字段用于将信息发送回服务器。
关于c# - 使用 jQuery 修改 HTML 元素并访问服务器上的更新 (ASP.NET),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10302831/