繁体   English   中英

Jquery 从跨度中删除文本

[英]Jquery remove text from span

我是 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。

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

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

如果您确定这些span位于某个tablediv则将其专门定位在那些内以使脚本执行得更好。

例如。

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

这是更优化和更快的方法:

$(".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()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM