У меня проблема с общим доступом в Whatsapp с использованием Javascript

#javascript #html #jquery #css

#javascript #HTML #jquery #css

Вопрос:

у меня есть кнопка, когда я нажимаю на эту кнопку, затем открывается WhatsApp, и когда я нажимаю в чате и хочу отправить сообщение, тогда все приходит правильно, но полный URL не приходит, потому что amp; включен в мой URL.

Мой URL-адрес выглядит так

 www.yoururl.com?1st=1amp;2nd=2amp;3rd=2amp;4th=1amp;5th=2amp;6th=2amp;7th=2amp;8th=2amp;9th=2amp;10th=2amp;share=shareamp;name=s
  

Но обмен в WhatsApp тогда происходит только

 www.yoururl.com?1st=1 
  

когда я сначала удаляю amp;, появляется URL

 www.yoururl.com?1st=12nd=2
  

поэтому я хочу поделиться полным URL с amp;

Вот код кода JavaScript

   var url1 = "?1st="   encodeURIComponent(selectedOption1)   "amp;2nd="   encodeURIComponent(selectedOption2)   "amp;3rd="   encodeURIComponent(selectedOption3)   "amp;4th="   encodeURIComponent(selectedOption4)   "amp;5th="   encodeURIComponent(selectedOption5)   "amp;6th="   encodeURIComponent(selectedOption6)   "amp;7th="   encodeURIComponent(selectedOption7)   "amp;8th="   encodeURIComponent(selectedOption8)   "amp;9th="   encodeURIComponent(selectedOption9)   "amp;10th="   encodeURIComponent(selectedOption10);
        section3.style.display="none";
        section4.style.display="block";
        var u = "www.yoururl.com";
        var input = document.getElementById("1nameInput").value;
        var inputt = document.getElementById("copytxt");
        var inputname = "amp;name=";
      
        var  share = "amp;share=share";
        var text = u   url1   share   inputname   input;
        inputt.value = text; 
        var $whatsApp = $('.whatsapp a');
       decorateWhatsAppLink(text, input);

 

    function decorateWhatsAppLink(text, input) { 
   
  // Getting user input 
  var message = "text"; 

  // Opening URL 
  var url = 'whatsapp://send?text=';
 
 //define the message text
 var textttt = 'dare take this Challenge Now ';
 
  
 //encode the text
 

 //find the link 

 var $whatsApp = $('.whatsapp a');

 //set the href attribute on the link
 $whatsApp.attr('href', url   input   textttt   text);
 
  
} 
   
  

URL-адрес получен из текстовой переменной

пожалуйста, скажите мне, как сделать

Ответ №1:

используйте encodeURIComponent для всего URI, а не только для значений параметров, чтобы amp; также кодировалось…

 foo = "www.yoururl.com?1st=1amp;2nd=2amp;3rd=2amp;4th=1amp;5th=2amp;6th=2amp;7th=2amp;8th=2amp;9th=2amp;10th=2amp;share=shareamp;name=s"

foo_final = encodeURIComponent(foo);