【发布时间】:2015-08-19 06:55:43
【问题描述】:
很抱歉描述太长,但有必要描述我的问题。我制作了一个网络表单,工作人员可以在其中编辑他们的详细信息。例如地址详细信息。
因此,使用以下代码向用户显示用于编辑的数据。
<p>Address</p>
<asp:TextBox runat="server" ID="txtBoxAdd"></asp:TextBox>
<p>City</p>
<asp:TextBox runat="server" ID="txtBoxCity"></asp:TextBox>
<p>Country</p>
<asp:TextBox runat="server" ID="txtBoxCountry"></asp:TextBox>
后端。
txtBoxAdd.Text = addressItem["address"];
txtBoxCity.Text = addressItem["city"];
txtBoxCountry.Text = addressItem["country"];
当用户点击Save 按钮时,项目进入编辑模式。 addressItem.Editing.BeginEdit(); 并使用文本框中的值更新字段。
现在 addressItem 和字段 country, addressItem["country"] 是 sitecore 中的一个下拉菜单。使用源作为(addressItem 的模板):
我可以在前端显示这个下拉菜单吗?填充了来自 sitecore 的所有值。
我的想法是制作一个下拉列表并将项目/sitecore/content/Site Config/Constants/Countries 的所有子项添加到其中。但我想可能有更好的解决方案?
【问题讨论】:
-
为什么不使用 Sitecore 页面编辑器?还是应该在 CD 上工作?
-
要求不使用页面编辑器。
-
@JanBluemink 原因是在使用 Sitecore 页面编辑器时,页面编辑器栏出现在页面顶部。是否有一些原因要隐藏此栏并仍然在页面编辑器模式下编辑项目。
-
鉴于您需要使用服务器控件的方向,可能没有比这更好的解决方案了。最好填充下拉列表,然后将所选值存储在保存按钮处理程序中。唯一的改进是从字段项中读取源字段。
-
我不认为解决方案是在这种情况下的页面编辑器,似乎 OP 将有关用户的数据存储为 Sitecore 项目,然后需要从前端进行编辑(CD实例)可能来自用户登录后的个人资料页面。