如何在弹出窗口url中使用带$符号的变量?

时间:2013-05-10 20:58:53

标签: javascript html

我有一个假设弹出窗口的超链接。问题是,如果弹出窗口的网址上有$符号,窗口永远不会弹出。我已经包含了两个小提琴演示一个没有$工作,一个有$不工作。任何人都可以帮我修复一个带有$ sign的弹出窗口网址吗?

具有$ sign的变量:

&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>

工作小提琴演示(wihtout $):

http://jsfiddle.net/Vpwxy/

不工作小提琴演示(带$):

http://jsfiddle.net/yXvAu/

1 个答案:

答案 0 :(得分:3)

问题是你在window.open的URL参数中互相使用'。这不是造成你问题的美元符号($)。

<a href=\"javascript:window.open('http://awe.....&variable1=$.mydef1('se.....