使用标题文本将类添加到多个标题

时间:2014-08-20 19:58:58

标签: javascript jquery html sharepoint-2010

使用下面的HTML:

<tr class="more-options">
                    <td width="190px" valign="top" class="ms-formlabel">
                        <H3 class="ms-standardheader">
                            <nobr>Required Hidden 1</nobr>
                        </H3>
                    </td>
                    <td width="400px" valign="top" class="ms-formbody">
                        <SharePoint:FormField runat="server" id="ff2{$Pos}" ControlMode="Edit" FieldName="Required_x0020_Hidden_x0020_1" __designer:bind="{ddwrt:DataBind('u',concat('ff2',$Pos),'Value','ValueChanged','ID',ddwrt:EscapeDelims(string(@ID)),'@Required_x0020_Hidden_x0020_1')}"/>
                        <SharePoint:FieldDescription runat="server" id="ff2description{$Pos}" FieldName="Required_x0020_Hidden_x0020_1" ControlMode="Edit"/>
                    </td>
                </tr>
                <tr class="more-options">
                    <td width="190px" valign="top" class="ms-formlabel">
                        <H3 class="ms-standardheader">
                            <nobr>Required Hidden 2</nobr>
                        </H3>
                    </td>

我正在尝试添加课程&#34; .more-required&#34;到标签。但是我希望能够将标题文本输入到数组中并使用javascript / jquery函数使用标题文本将类添加到标题中。

这是我的Javascript:

var Req = ['Required Hidden 1','Required Hidden 2'];

for (i= 1; i <= Req.length; i++){
var page = $(".ms-standardheader nobr:contains(" +Req[i]+ ")");
page.parent().addClass('more-required');
};

这不起作用。 任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:0)

这样的事情可能是:

var Req = ['Required Hidden 1','Required Hidden 2'];

$('.ms-standardheader nobr').each(function(){
    for(var i = 0;i < Req.length;i++){
        if($(this).text().indexOf(Req[i]) != -1){
            $(this).addClass('more-required');
        }
    }
});

您希望显式迭代每个nobr标记,根据它的内容检查每个数组值,如果找到该值,则添加所需的类。

http://jsfiddle.net/sy1L0f05/