Jump to content
danman97

Popup Not Working - Code Gen *answered*

Recommended Posts

Hi I have continued a second page with a Popup Generator now (http://dl.dropbox.co...Untitled-2.html) but have come across a problem. I get no error but the link just won't open. Short Code:

<!DOCTYPE html><head><script>/*Functions*/function editLink(){var lText= document.getElementById('linkText');var lURL= document.getElementById('linkURL');var lUL= lUL_value();var popH= document.getElementById('popH');var popW= document.getElementById('popW');var taValue= document.getElementById('taHTMLoutput');function lUL_value(){if (document.getElementById('uLine_yes').checked){  return "text-decoration:underline;";} else if (document.getElementById('uLine_no').checked){  return "text-decoration:none;";};};function changeHTML(){return "<a onClick="window.open("" + lURL.value + "","_blank","toolbar=yes, location=yes, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=yes, width=" + popW.value + ", height=" + popH.value + "");" style="" + lUL + "">" + lText.value + "</a>";};taValue.value= changeHTML();document.getElementById('outputP').innerHTML= "<a onClick="window.open("" + lURL.value + "","_blank","toolbar=yes, location=yes, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=yes, width=" + popW.value + ", height=" + popH.value + "");" style="" + lUL + "">" + lText.value + "</a>";}</script></head> <body><div id="uberContainer"><table width="100%"><tbody><tr><td><div id="mainContainer"><table align="center"><tr><td><form id="form1" onsubmit="return false;" style="border:1; border:#666"><legend><h3>Popup Details</h3></legend><div id="formContainer"><table><tr><td><label for="linkText">Link Text</label></td><td><input class="inputRight" id="linkText" autofocus="autofocus" placeholder="Mel Jones Photography Ltd." required size="40" type="text" autocomplete="on" /></td></tr> <tr><td><label for="linkURL">Link URL</label></td><td><input type="url" required class="inputRight" id="linkURL" placeholder="http://meljones.info/" autocomplete="on" size="40" /></td></tr><tr><td><label for="uLine">Underline</label></td><td><input id="uLine_yes" type="radio" name="uLine" value="yes" /> Yes <input id="uLine_no" type="radio" name="uLine" value="no" /> No</td></tr><tr><td><label for"linkCol">Colour</label></td><td><input id="linkCol" type="color" disabled /></td><tr><td><label for"popH">Height</label></td><td><input id="popH" placeholder="400" value="400" required type="number" /></td></tr><tr><td><label for"popW">Width</label></td><td><input id="popW" placeholder="600" value="600" required type="number" /></td></tr><tr><td></td><td><button onclick="editLink();">Amend Link!</button></tr></table></div></form></td><td><table><tr><td><h3>Output: </h3></td><td><p id="outputP"></p></td></tr><tr><td>HTML:</td><td><form id="formHTMLoutput"><textarea onClick="select_content('taHTMLoutput');" value="" id="taHTMLoutput"readonly placeholder="The HTML code for the Popup will appear here!"></textarea></form></td></tr></table></td></tr></table></div></td><td width="250px"></td></tr></tbody></table></div></body></html>

Thanks

Edited by danman97

Share this post


Link to post
Share on other sites

You've got a mess of quotes here:

return "<a onClick="window.open("" + lURL.value + "","_blank","toolbar=yes, location=yes, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=yes, width=" + popW.value + ", height=" + popH.value + "");" style="" + lUL + "">" + lText.value + "</a>";

And here:

document.getElementById('outputP').innerHTML= "<a onClick="window.open("" + lURL.value + "","_blank","toolbar=yes, location=yes, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=yes, width=" + popW.value + ", height=" + popH.value + "");" style="" + lUL + "">" + lText.value + "</a>"; 

Beyond that, I haven't given a deep look at your code. Those mistakes are enough to ruin a whole application.

Share this post


Link to post
Share on other sites

Do you mean how the '\' are missing. They dont seem to show on the forum but they are there on the web page. I just checked the Dev Tools and they are there... Or have you found another problem. I just cant find it! :umnik2:

Share this post


Link to post
Share on other sites

i think inside the onclick=" " you can't use " chars, or ' chars if your using onclick=' ', maybe there is a way to escape them but i'm not sure. try changing:

onClick=\"

to

onClick='

and

);\" style=

to

);' style=

in both lines, so that the characters used to surround the onclick value are different from the characters used to surround the values sent to window.open() and used in style=.

Share this post


Link to post
Share on other sites

A backslash won't escape a character in an HTML attribute. You should use " or use single-quotes instead of double-quotes.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...