在ASP.NET代码后台访问客户端修改的HTML
Access clientside modified HTML in ASP.NET codebehind
aspx页面的codeehind有办法访问修改后的html吗?
例如,我在"queue.aspx"上有一个空的runat="server"无序列表,看起来像这样
<ul runat="server" id="sortableQueue" class="sortable" >
</ul>
然后我使用codeehind"queue.aspx.cs"填充它
HtmlGenericControl li_item1 = new HtmlGenericControl("li");
li_item1.InnerText = "Shot Name - 1";
li_item1.Attributes["style"] = "cursor: move";
li_item1.Attributes["data-shotid"] = "1";
sortableQueue.Controls.Add(li_item1);
HtmlGenericControl li_item2 = new HtmlGenericControl("li");
li_item2.InnerText = "Shot Name - 2";
li_item2.Attributes["style"] = "cursor: move";
li_item2.Attributes["data-shotid"] = "2";
sortableQueue.Controls.Add(li_item2);
接下来,允许用户使用html5sortable对这些列表项进行重新排序。这可以很好地工作,并修改页面的html。
然后,我尝试在"queue.aspx.cs"中读取这样更改后的html,以便将它们保存到数据库中。
protected void btnSaveQueue_Click(object sender, EventArgs e)
{
int count = sortableQueue.Controls.Count;
for (int p = 1; p <= count - 1; p++)
{
HtmlGenericControl li_item = (HtmlGenericControl)sortableQueue.Controls[p];
Response.Write(li_item.Attributes["data-shotid"]); //for testing purposes
}
}
不幸的是,该函数读取html时与重新排序html5之前一样。例如,如果我交换了项目1和2的位置,我希望函数写"21"。
相反,它写"12",就好像什么都没修改一样。
无论如何,对这个问题的描述很长,但我愿意接受任何关于如何使我的方法发挥作用的建议,或者实现可重新排序的拖放列表的相同功能的替代方法。
ASP.net&web表单仍然使用HTTP的基本功能,通常是通过将表单发布回服务器。将信息传递回服务器的唯一方法是在HTML表单输入元素或查询字符串中。
尽管ASP.net公开了服务器端元素/控件,但要将信息持久化回服务器,您需要使用表单元素。ASP.net利用<input type="hidden" />
来保持视图状态等。使用隐藏字段来存储关于重新吸收列表的新索引的信息。使用html5sortables sortuptate
事件将所述信息放入隐藏字段。
相关文章:
- 客户端服务器REST API captcha实现
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何使用Socket.io将命令从客户端发送到服务器
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 如何将我的javascript库公开给其他客户端使用
- 当客户端将两个按钮的javascript函数参数修改为相同时,SQL/PHP会更新多行
- 客户端修改的 HTML/CSS/JS
- 如何在 JavaScript/jQuery 中修改提交的文件客户端
- 在ASP.NET代码后台访问客户端修改的HTML
- 如何使用单个声明修改服务器端和客户端都使用的库
- 如何使用客户端语言(JavaScript)在SharePoint中编写/修改xml文件
- 使用Nodejs从客户端传递到服务器时修改的数据格式
- SSE客户端在我修改服务器时停止工作(Server Sent Event)
- Parse.com云功能-在发送到客户端之前手动修改对象字段
- 通过从客户端代码调用服务器端代码来修改UpdatePanel
- 修改客户端的wsgi集成
- 当一个集合被修改时,流星会向客户端推送多少数据
- 如何在客户端修改js文件