skip to Main Content

I am trying to execute the following code:

<button onclick="increment()">Increment</button>
<div id="iframe">
<script>
var id = 139000;
var link='<iframe src="https://somewebsite.com/something.aspx?sa=1&pid=' + id + '" height="600px" width="100%" />';
function increment(){
id++;
document.getElementById('iframe').innerHTML = id + link ;
}
</script>
</div>

But while executing, the & in src="" converts to &amp; which breaks the original URL and doesn’t go to the desired destination. I looked up on the internet but as I am a noob, I was not able to figure it out. Please help me to make this work!

2

Answers


  1. All you need to do is

    <button onclick="increment()">Increment</button>
    <div id="iframe">
    <script>
    var id = 139000;
    var link='<iframe src="https://somewebsite.com/something.aspx?sa=1&pid=' + id + 
    '" height="600px" width="100%" />';
    var new_link = link.replaceAll('&amp;','&');
    
    function increment(){
    id++;
    document.getElementById('iframe').innerHTML = id + new_link;
    }
    </script>
    
    Login or Signup to reply.
  2. This is definitely a blogger issue, and the reason behind happening is :

    The character "&" is an ISO HTML reserved character used to denote the start of a parameter.

    To overcome this the Blogger editor translate the & you enter to the HTML entity, &amp; , that will display & when the page or URL is rendered in a browser, so that you don’t have to do it yourself.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search