Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果字段为空,则在sitecore中显示无_Javascript_C#_Sitecore - Fatal编程技术网

Javascript 如果字段为空,则在sitecore中显示无

Javascript 如果字段为空,则在sitecore中显示无,javascript,c#,sitecore,Javascript,C#,Sitecore,这在Sitecore 7.2和C#中 我在一个div中使用了3个字段,我不知道在输入字段时如何显示每个字段。所以我的田地是牛排、培根和鸡蛋。它们都是富文本编辑器的。所以我们假设牛排是在页面加载时加载的。当用户在培根或鸡蛋中输入文本,使其变为显示:无;并显示用户在字段中输入的内容?我不确定这是javascript还是后端C# 假设我有一个模板与在Sitecore中创建的控件一起工作,该控件带有所需的字段,当有人进入该字段并发布时,它将以HTML显示 <div class="containe

这在Sitecore 7.2和C#中

我在一个div中使用了3个字段,我不知道在输入字段时如何显示每个字段。所以我的田地是牛排、培根和鸡蛋。它们都是富文本编辑器的。所以我们假设牛排是在页面加载时加载的。当用户在培根或鸡蛋中输入文本,使其变为显示:无;并显示用户在字段中输入的内容?我不确定这是javascript还是后端C#

假设我有一个模板与在Sitecore中创建的控件一起工作,该控件带有所需的字段,当有人进入该字段并发布时,它将以HTML显示

 <div class="container">
        <div class="steak" id="steak"><sc:FieldRenderer FieldName="Steak" runat="server"  /></div>
        <div class="bacon" id="bacon"><sc:FieldRenderer FieldName="Bacon" runat="server"  /></div>
        <div class="eggs id="eggs"><sc:FieldRenderer FieldName="Eggs" runat="server"  /></div>
 </div>

您可以使用包裹在每个
周围的
控件来实现此目的:

<asp:PlaceHolder Visible='<%#!string.IsNullOrWhiteSpace(Sitecore.Context.Item["Steak"])%>' runat="server">
   <div class="steak">
      <sc:FieldRenderer FieldName="Steak" runat="server"></sc:FieldRenderer>
   </div>
</asp:PlaceHolder>

我已经在这里展示了在ascx标记中设置可见性,但是如果您愿意,可以很容易地从代码隐藏中进行设置。此外,理想情况下,您还应该检查页面编辑模式,以确保在页面编辑器模式下始终显示占位符(这包括检查属性
Sitecore.Context.PageMode.IsPageEditorEditing
)。

您可以使用围绕每个
控件来实现这一点:

<asp:PlaceHolder Visible='<%#!string.IsNullOrWhiteSpace(Sitecore.Context.Item["Steak"])%>' runat="server">
   <div class="steak">
      <sc:FieldRenderer FieldName="Steak" runat="server"></sc:FieldRenderer>
   </div>
</asp:PlaceHolder>

我已经在这里展示了在ascx标记中设置可见性,但是如果您愿意,可以很容易地从代码隐藏中进行设置。此外,理想情况下,您还应该检查页面编辑模式,以确保在页面编辑器模式下始终显示占位符(这包括检查属性
Sitecore.Context.PageMode.IsPageEditorEditing
)。

您可以使用围绕每个
控件来实现这一点:

<asp:PlaceHolder Visible='<%#!string.IsNullOrWhiteSpace(Sitecore.Context.Item["Steak"])%>' runat="server">
   <div class="steak">
      <sc:FieldRenderer FieldName="Steak" runat="server"></sc:FieldRenderer>
   </div>
</asp:PlaceHolder>

我已经在这里展示了在ascx标记中设置可见性,但是如果您愿意,可以很容易地从代码隐藏中进行设置。此外,理想情况下,您还应该检查页面编辑模式,以确保在页面编辑器模式下始终显示占位符(这包括检查属性
Sitecore.Context.PageMode.IsPageEditorEditing
)。

您可以使用围绕每个
控件来实现这一点:

<asp:PlaceHolder Visible='<%#!string.IsNullOrWhiteSpace(Sitecore.Context.Item["Steak"])%>' runat="server">
   <div class="steak">
      <sc:FieldRenderer FieldName="Steak" runat="server"></sc:FieldRenderer>
   </div>
</asp:PlaceHolder>


我已经在这里展示了在ascx标记中设置可见性,但是如果您愿意,可以很容易地从代码隐藏中进行设置。此外,理想情况下,还应检查页面编辑模式,以确保在页面编辑器模式下始终显示占位符(这包括检查属性
Sitecore.Context.PageMode.IsPageEditorEditing
)。

如果不需要类和id属性(将其样式改为
.container div
)您可以使用fieldrenderer的封闭标记属性:

<div class="container">
  <sc:FieldRenderer FieldName="Steak" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Bacon" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Eggs" EnclosingTag="div" runat="server" />
</div>


如果填充了字段,则文本将用div标记包装,否则将不会呈现任何内容。

如果不需要class和id属性(将其样式改为
.container div
),则可以使用fieldrenderer的封闭标记属性:

<div class="container">
  <sc:FieldRenderer FieldName="Steak" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Bacon" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Eggs" EnclosingTag="div" runat="server" />
</div>


如果填充了字段,则文本将用div标记包装,否则将不会呈现任何内容。

如果不需要class和id属性(将其样式改为
.container div
),则可以使用fieldrenderer的封闭标记属性:

<div class="container">
  <sc:FieldRenderer FieldName="Steak" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Bacon" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Eggs" EnclosingTag="div" runat="server" />
</div>


如果填充了字段,则文本将用div标记包装,否则将不会呈现任何内容。

如果不需要class和id属性(将其样式改为
.container div
),则可以使用fieldrenderer的封闭标记属性:

<div class="container">
  <sc:FieldRenderer FieldName="Steak" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Bacon" EnclosingTag="div" runat="server" />
  <sc:FieldRenderer FieldName="Eggs" EnclosingTag="div" runat="server" />
</div>



如果该字段已填充,则文本将用div标记包装,否则不会呈现任何内容。

现在我在这段代码中没有任何处理程序,如您所述,您希望在填充字段时仅显示字段周围的换行div吗?假设steak类可见,而bacon和eggs则隐藏在页面加载中。填充bacon或eggs字段时,它将变为可见,并且steak被隐藏。现在,我在这段代码中没有任何处理程序,这些处理程序实现了您所描述的功能。如果字段被填充,您是否只希望在字段周围显示包装div?假装steak类可见,而bacon和eggs在页面加载时被隐藏。填充bacon或eggs字段时,它将变为可见,并且steak被隐藏。现在,我在这段代码中没有任何处理程序,这些处理程序实现了您所描述的功能。如果字段被填充,您是否只希望在字段周围显示包装div?假装steak类可见,而bacon和eggs在页面加载时被隐藏。填充bacon或eggs字段时,它将变为可见,并且steak被隐藏。现在,我在这段代码中没有任何处理程序,这些处理程序实现了您所描述的功能。如果字段被填充,您是否只希望在字段周围显示包装div?假装steak类可见,而bacon和eggs在页面加载时被隐藏。当培根或鸡蛋场被填满时,它会变得可见,牛排也被隐藏起来。我会试试这个,但当两个或更多的场被填满时会发生什么呢?我如何确保,如果培根或鸡蛋的领域是填充,它是可见的,而牛排仍然隐藏?你们会这样做,为每个领域。也就是说,每个字段都有一个单独的占位符。也就是说,jammykams答案可能是更好的方法。正如jammykams指出的,封闭标记是更好的方法,但是它不会设置class属性。看看这篇博客文章如何处理这个问题。我将尝试此方法,但当填充两个或多个字段时会发生什么情况?我如何确保,如果培根或鸡蛋的领域是填充,它是可见的,而牛排仍然隐藏?你们会这样做,为每个领域。也就是说,每个字段都有一个单独的占位符。那个