c# - 使用 jQuery 修改 HTML 元素并访问服务器上的更新 (ASP.NET)

标签 c# asp.net

我有一个 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);
}

一旦我这样做,我想获取该元素的新文本​​或新属性,然后存储服务器端或的值。我应该注意到,然后我使用 LinkBut​​ton 回发到服务器。此时,当我查看该元素时,默认文本仍然存在,或者我添加的新属性丢失了。

有人可以解释为什么该元素没有在服务器上更新以及我如何获取它吗?

最佳答案

我相信您面临的问题是由于您使用的 html 元素的类型(div)造成的。如果您只是将 div 替换为“文本”类型的输入,它将按您的预期工作,允许您在回发时读取值。在表单提交/回发期间仅发送表单元素。

基于网络的所见即所得文本编辑器的工作原理就是一个例子。您在 div 中键入和编辑,但在后台您所做的所有更改都存储在隐藏字段中。该隐藏字段用于将信息发送回服务器。

关于c# - 使用 jQuery 修改 HTML 元素并访问服务器上的更新 (ASP.NET),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10302831/

相关文章:

c# - Azure 广告在声明中返回角色,但 User.IsInRole 返回 false

c# - sql语法错误?在我的 c# img url 字符串中

c# - 我可以从另一个部分类调用一个部分类中定义的函数吗?是否可以?

c# - 并非所有路径都返回一个值。 - 可选返回?

c# - 基于策略的授权在 asp.net 核心中不起作用

c# - 在 C# 中访问 Excel 图形

c# - 这段代码需要什么样的同步?

c# - 使用 LINQ 编译唯一对象列表

c# - WPF/Prism : How to make a resource in my main app trickle down into a usercontrol contained in a separate assembly?

由 html5sortable 的 sortupdate 触发的 JavaScript 运行了两次