2016-11-16 3 views
-3

Здравствуйте, я хочу, чтобы заменить слово «Регистр» на право «Привет» после того, как узелвыбрать элемент между 2 элементом и заменить

Проблемы есть слово «Регистр» не внутри какого-либо отдельного элемента вот почему я могу 't выберите любой селектор и отредактируйте его. и я не могу обернуть его каким-либо селектором, потому что html генерируется динамически php, и я не могу редактировать php-коды, поэтому мне нужна помощь jquery.

<div id="register_portion"> 
     <h3>Not registered? No problem!</h3> 
     Register <!-- I want to change this text --> 
     <div class="tml tml-register" id="theme-my-login1"> 
      <p class="message">Please register now.</p> 
      <form name="registerform" id="registerform1" 
       action="/login-now/?pending=activation&amp;instance=1" 
       method="post"> 
         form html... 
      </form> 
     </div> 
    </div> 
+0

Показать ваши усилия? – Satpal

+0

Поместите его в div и манипулируйте с помощью JS ... – Hemakumar

+0

Почему бы вам просто не обернуть этот текст в e.x. '', а затем использовать функцию jQuery '.html()'? –

ответ

1

Вы должны получить следующий родственный h3 элемента, используйте get(), чтобы получить лежащий в основе элемента DOM, затем используя свойство nextSibling узел, то вы можете использовать nodeValue, чтобы установить его текст.

$("#register_portion h3").get(0).nextSibling.nodeValue = "Hello";
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div id="register_portion"> 
 
    <h3>Not registered? No problem!</h3> 
 
    Register 
 
    <!-- I want to change this text --> 
 
    <div class="tml tml-register" id="theme-my-login1"> 
 
    <p class="message">Please register now.</p> 
 
    <form name="registerform" id="registerform1" action="/login-now/?pending=activation&amp;instance=1" method="post"> 
 
     form html... 
 
    </form> 
 
    </div> 
 
</div>

+0

Большое спасибо. его работа – Abdullah

0

Пожалуйста, попробуйте следующее:

Объявите пролет с классом .replaceText

<span class="replaceText">Register</span> 

Используйте .text функцию, чтобы установить значение диапазона элемента

$('.replaceText').text('Hello'); 

Вот solution

+0

Я не могу объявить диапазон, html генерирует динамически php, я не могу редактировать PHP-коды. вот почему мне нужна помощь jQuery – Abdullah

0

Закройте его внутри div или span. Получите доступ к этому элементу, используя id или class или сам элемент. Затем используйте:

$('YourElement').html('YourText'); 

ИЛИ

$('YourElement').text('YourText'); 

Код ниже удовлетворяет ваше состояние:

$('#hello').html('Hello')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div id="register_portion"><h3>Not registered? No problem!</h3> 
 
    <div id="hello">Register</div> <!-- I want to change this text --> 
 
    <div class="tml tml-register" id="theme-my-login1"> 
 
    <p class="message">Please register now.</p> 
 
    <form name="registerform" id="registerform1" action="/login-now/?pending=activation&amp;instance=1" method="post">form html...</form> 
 
    </div> 
 
    </div>

+0

Я не могу заключить с div, html динамически генерирует php, я не могу редактировать php-коды. вот почему мне нужна помощь jQuery – Abdullah

0

$('#register_portion').contents().filter(function() { 
 
    return this.nodeType == 3; 
 
}).replaceWith("qweqwew");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="register_portion"> 
 
    <h3>Not registered? No problem!</h3> 
 
    Register 
 
    <!-- I want to change this text --> 
 
    <div class="tml tml-register" id="theme-my-login1"> 
 
    <p class="message">Please register now.</p> 
 
    <form name="registerform" id="registerform1" action="/login-now/?pending=activation&amp;instance=1" method="post">form html...</form> 
 
    </div>

Если только один текстовый узел доступен внутри register_portion вы можете сделать это

Смежные вопросы