Jquery从span中删除文本

时间:2012-06-26 12:33:41

标签: javascript jquery

我是JQuery的新手,并且真的在努力完成我想要的查询。

我正在使用SharePoint,当使用外部数据列并将其设置为必填字段时,错误消息始终显示,直到您填写数据。与其他类型的列不同,它们仅在您单击“确定”/“保存”并且未填充数据后才出现。因此,我需要从这些类型的列中删除错误消息文本。

我假设我需要在包含“外部数据”字样的.ms-error类中搜索span并隐藏它。

从使用IE开发人员工具栏,我已经确定了该区域。

 <table class="ms-usereditor" id="ctl00_m_g_05df537a_596b_443a_a11e_764069facec8_ctl00_Field_External_539c53fe_8334_43c8_b089_cc28d7895e68_Picker_OuterTable" style="border-collapse: collapse;" border="0" cellSpacing="0" cellPadding="0">
    <tbody>
     <tr>
     <td colSpan="3">
       <span class="ms-error" id="ctl00_m_g_05df537a_596b_443a_a11e_764069facec8_ctl00_Field_External_539c53fe_8334_43c8_b089_cc28d7895e68_Picker_errorLabel">
           Text - You must specify a value before using the Check button. You can also use Select button to choose External Data.
        </span>
      </td>
      </tr>
    </tbody>
</table>

有人可以帮助我使用JQuery。

3 个答案:

答案 0 :(得分:28)

var spans = $('.ms-error');

spans.text(''); // clear the text
spans.hide(); // make them display: none
spans.remove(); // remove them from the DOM completely
spans.empty(); // remove all their content

答案 1 :(得分:3)

$('span.ms-error:contains("External Data")').hide();

如果您确定这些span位于某个tablediv内,那么请专门针对这些内容,以使脚本更好地运行。

例如

$('.ms-usereditor span.ms-error:contains("External Data")').hide();

答案 2 :(得分:0)

这是一种更优化,更快捷的方法:

$(".ms-usereditor span[class^='ms-error']:contains('External Data')").hide()

此外,当您需要某种正则表达式模式来查找所有匹配的节点或具有相似类名的节点时,此语法也非常有用。假设您需要找到 .ms-error-1 .ms-error-abc 。因此,相同的语法可以工作,甚至更好,您可以这样做:

$(".ms-usereditor span[class^='ms-error-']:contains('External Data')").hide()