Захватите текст из тега html <a>, определенного классом, и автоматически введите его в другую текстовую область - PullRequest
0 голосов
/ 16 октября 2018

У меня есть HTML-тег, сгенерированный плагином WP, который содержит случайную ссылку.Мне нужно взять сгенерированную ссылку и написать ее в текстовой области (из формы контакта), но она должна быть автоматической.

Сгенерированный код, содержащий ссылку (изменить нельзя):

<p class="ozpital-wpwetransfer-success__url"><a 
href="we.tl/123">we.tl/123</a></p>

Код из textarea для автоматической записи этой ссылки:

<p><textarea class="wpcf7-form-control"></textarea></p>

Мне удалось создать обходной путь с помощью кнопки, но это не очень хорошо, мне нужно автоматизировать код без кнопки, если мы запустимкод будет автоматически писать эту ссылку в текстовой области.Кроме того, я пытаюсь с событием вставки, но не должно быть так, у меня просто нет другой идеи!

Демо здесь: https://jsfiddle.net/xf_analog/cgfwup90

Я думаю, что демо егоСамо собой разумеется, вся помощь будет оценена.Спасибо

Ответы [ 2 ]

0 голосов
/ 16 октября 2018

Попробуйте этот простой,

HTML

<a href="google.com" class="aa">ff</a>
<textarea class="tt"></textarea>

JQuery

$(document).ready(function() { let link = $(".aa").attr("href"); $(".tt").val(link); });

0 голосов
/ 16 октября 2018

Если этот элемент генерируется динамически, вы можете попробовать сделать что-то вроде этого:

window.onload = ()=>{
   let link;
   let linkValue = '';
   let textArea = document.querySelector('textarea.wpcf7-form-control');
  
  // generate the paragraph that has the link after 5 seconds
  setTimeout(()=>{
    // the containing paragraph
    let paragraph = document.createElement('p');
    // the anchor element that will be containing the link we want
    let anchor = document.createElement('a');
    let textNode = document.createTextNode('I am the target');
    anchor.appendChild(textNode);
    anchor.setAttribute('href', 'we.tl/123');
    paragraph.classList.add("ozpital-wpwetransfer-success__url");
    paragraph.appendChild(anchor)
    document.body.appendChild(paragraph);
  }, 5000);
  
  // check if the anchor element exists then grab the value of its
  // href attribute
  setInterval(()=>{
    // grab the anchor element inside the containing paragraph
    link = document.querySelector('p.ozpital-wpwetransfer-success__url a');
    // get the value of the element above
    if(link){
      linkValue = link.getAttribute('href');
    }
    // update the textarea's value if and only if the link is not in its own value
    if(linkValue !== '' && textArea.value.indexOf(linkValue) == -1){
      textArea.value = link.getAttribute('href')
    }
  }, 1000)
};
<html>
  <body>
    <p><textarea class="wpcf7-form-control"></textarea></p>
  </body>
</html>

Также, вот рабочий пример .:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...