2014-05-14 47 views
1

如何将title属性添加到DNN:Label控件,并将其作为标题属性<label title="myTitle">在html中呈现?如何将title属性添加到dotnetNuke中的dnn控件中?

这里是我的代码:

<div class="dnnFormItem"> 
    <dnn:label id="lblDateNeeded" runat="server" controlname="DateNeeded" resourcekey="DateNeeded" /> 
    <dnn:dnndatepicker runat="server" cssclass="dnnFormInput" id="DateNeeded" skin="Office2010Silver"> 
    <Calendar UseRowHeadersAsSelectors="False" UseColumnHeadersAsSelectors="False" ViewSelectorText="x" Skin="Office2010Silver"></Calendar> 
    <DateInput DisplayDateFormat="M/d/yyyy" DateFormat="M/d/yyyy" LabelWidth="40%"></DateInput> 
    <DatePopupButton ImageUrl="" HoverImageUrl=""></DatePopupButton> 
    </dnn:dnndatepicker> 
</div> 
+1

你的问题不清楚。当你提到标题时,大多数人会认为页面标题或模块标题。在下面的评论中,您提到了表单字段的标题属性,可能是或输入或其他内容。放一个更大的代码示例,以便我们可以将您的问题置于上下文中 – RacerNerd

+0

我提供了一个例子。 – user3612681

+0

有人会认为这是一件简单的事情,你的技术会起作用......人们会想。 – RacerNerd

回答

1
this.Page.Title = "My Custom Title"; 

但是,DotNetNuke的,这只会在Page_PreRender方法(在DotNetNuke的6.2.3验证)工作。

如果你想提前设置,你仍然必须使用这种方法,归结为:

((DotNetNuke.Framework.CDefault)this.Page).Title = "My Custom Title"; 

以上将在Page_Load中,Page_Init和Page_PreRender工作。

如果你想更模块化,你可以添加你的模块的基础类(一个好主意,始终做到这一点)以下:

public DotNetNuke.Framework.CDefault BasePage { 
    get { return (DotNetNuke.Framework.CDefault)this.Page; } 
} 

,然后简单地使用:

this.BasePage.Title = "My Custom Title"; 

这种方法的好处是你可以将它用于元描述和关键字。

this.BasePage.Description = "My Custom Description"; 
this.BasePage.Keywords = "My Custom Keywords"; 

​​

+0

这个工作,如果我想创建像一个窗体,并添加一个标题属性的文本框之一? – user3612681

+0

不,这将适用于页面标题,而不是表单。你的问题不清楚。试试'this.Title =“”;' – MarceloBarbosa

0

title属性是不是在DNN标签访问。如OP所述,如果在前端代码中指定为属性,则在输出HTML中将被忽略。此外,如果在使用YOURLABEL.Attributes.Add()的代码中添加,它也将被忽略。

由于无法使用DNN标签的属性,因此需要其他选项。一种选择是用JQuery来解决这个问题。

由DNN标签输出HTML看起来像这样:

<div class="dnnLabel"> 
    <label> 
    <span id="#ASP_PATH#_#YOURID#">Test Label</span> 
    </label> 
</div> 

以下jQuery将设置基于SPAN的文字标签的title属性:

$(“标签” ).each(function(){

运行这样做会产生对HTML的以下更改:

<div class="dnnLabel"> 
    <label title="Test Label"> 
    <span id="#ASP_PATH#_#YOURID#">Test Label</span> 
    </label> 
</div> 

此功能在页面上的所有标签上运行。可以修改JQuery选择器来标识需要修改的标签,如果它不是页面上的所有内容。

这可能不会产生您正在寻找的确切输出,但您对JQuery函数有很大的灵活性。如果您需要为标签设置一个特殊值并知道文本的内容,可以使用if或switch来标识特定标签并相应地处理它。

相关问题