如何更改包含输入标记的标签文本?

时间:2016-03-15 13:36:43

标签: jquery html

我希望每页更改记录文字,但是 当我更改标签文本时:删除了select标签。 请指教。

  <div id="dynamic-table_filter" class="dataTables_filter">
        <label>Search:    
            <input aria-controls="dynamic-table" type="text">
        </label>
  </div>

jquery:

$('#dynamic-table_filter label').text('جستجو');

1 个答案:

答案 0 :(得分:3)

获取textNode并将其替换为新文本。使用 contents() 获取所有子项,包括text和comment节点,因为textNode是第一个可以通过 eq(0) 获取的子节点,然后使用的 replaceWith()

$('#dynamic-table_filter label').contents().eq(0).replaceWith('جستجو');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="dynamic-table_filter" class="dataTables_filter">
  <label>Search:
    <input aria-controls="dynamic-table" type="text">
  </label>
</div>

使用纯JavaScript

document.querySelector('#dynamic-table_filter label').firstChild.nodeValue = 'جستجو';
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="dynamic-table_filter" class="dataTables_filter">
  <label>Search:
    <input aria-controls="dynamic-table" type="text">
  </label>
</div>