Передать значения между 2 элементами, вызванными событием jQuery - PullRequest
0 голосов
/ 13 сентября 2018

У меня проблема с JavaScript.Я новичок в JavaScript.Я пытаюсь отправить данные в текстовое поле из тега h1.На самом деле, у меня есть продукт, созданный с помощью woocommerce.Когда посетитель нажимает на какой-либо товар, я открываю окно чата с названием товара.В настоящее время я протестировал pass с некоторым пользовательским значением для этого textarea.Теперь мне нужно передать его клиенту по названию продукта.Это мой сценарий.Мне нужно заменить «Это мое пользовательское значение» на название продукта, нажатое посетителем.

$(document).ready(function () {
  // alert( "ready!" );
  jQuery("body").on("click", ".btn-test", function (e) {
    // Check if valid email or name is available
    if (!wplc_cookie_email || !wplc_cookie_name) {
      console.log("Test");
      alert('Please log in to the chat to proceed');
    } else {
      // Open the chat if closed
      if (!$('#wp-live-chat-header').hasClass('active')) {
        document.getElementById("wp-live-chat-header").click();
      }
      // Pass text to the chat input - text area
      $("textarea#wplc_chatmsg").val("This is my custom value");
    }
  });
});

Ответы [ 3 ]

0 голосов
/ 13 сентября 2018

Хорошо, предположим, что это ваш продукт,

<div class="product" data-title="product_title">
.......
.....
</div>

теперь вы можете получить заголовок данных с помощью jquery.data, как в документации jquery здесь как

 $(".product").on("click",function(){
    var title=$(this).data("title");
});
0 голосов
/ 13 сентября 2018

Лучше использовать .text (), чтобы удалить html из заголовка, прежде чем помещать его в текстовую область.

$("textarea#wplc_chatmsg").val($(".product_title.entry-title").text()
+ "\n" + $(".product_price").text());
0 голосов
/ 13 сентября 2018

Вы можете получить доступ к заголовку с помощью jquery, например, $("#idOfYourH1").html(); и передать его функции val().Однако я бы не советовал, вам следует использовать исходную строку из информации о продукте, которая, вероятно, доступна где-то прямо в коде.

Редактировать: Попробуйте изменить значение с помощью $("textarea#wplc_chatmsg").val($(".product_title.entry-title").html());

...