我得到了一个应该弹出的超链接。问题是,如果弹出窗口的 url 上有 $ 符号,则窗口永远不会弹出。我包含了两个 fiddle 演示,一个没有 $,可以工作,一个有 $,不能工作。任何人都可以帮我修复以 $ 符号作为弹出窗口 url 的问题吗?
带有 $ 符号的变量:
&variable1=$.mydef1('season_one_display')&variable2=$.mydef2('season_two_display')
完整代码:
var itemName = 'Test'
var itemName2 = 'popup'
var siteContents2 = "<li>"
+"<iframe src='https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTeUusgzharBX4HTwmQHNZOimpaCGRBx4CLKNJAiLjUVi12VN66' height=200 width=200 style='border: none;'></iframe><br>"
+"<div class='details'>"
+"<div class='title'>"
+"<a href='https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTeUusgzharBX4HTwmQHNZOimpaCGRBx4CLKNJAiLjUVi12VN66' target=\"_blank\"'>"+itemName+"</a><br>"
+"<a href=\"javascript:window.open('http://awebsite.com/static/flash/ok1234567890123445.swf?itemid="+itemName+"&address=bsite.com&language=http://bsite.com/xml/viewer.xml&ok=1&pr=login_required_true_if_loggedin&sa=0&id=user15&jg=$.mydef&dp=$.mydef2&js=registration_required&dom=bsite.com&pn=bsiteak&variable1=$.mydef1('season_one_display')&variable2=$.mydef2('season_two_display')' , 'yourWindowName' , 'width=200,height=150')\">"+itemName2+"</a>"
document.getElementById("myDiv").innerHTML += siteContents2;
<ul id="myDiv"></ul>
工作 fiddle 演示(不含$):
无法使用 fiddle 演示(带有 $):
最佳答案
问题是您在 window.open 的 URL 参数中相互使用 '
。给您带来问题的不是美元符号 ($)。
<a href=\"javascript:window.open('http://awe.....&variable1=$.mydef1('se.....
关于javascript - 如何在弹出窗口 url 中使用带有 $ 符号的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16490744/