Javascript 如何在更改时附加url

Javascript 如何在更改时附加url,javascript,php,jquery,html,Javascript,Php,Jquery,Html,所以我有一个有趣的难题,我正试图解决。我使用的是FancyBox,使用它时,需要加载iframe时有href标记和url设置 在当前的表单中,用户选择一个正方形,然后输入一个数量,然后单击一个按钮,该按钮将启动(打开)fancybox 我想让它做的是修改href url过程中的每一步 例如,启动url就是说: http://www.domain.com/do.php 在正方形的上单击,它将变为 http://www.domain.com/do.php?s=3 然后,在输入金额时,url会附加

所以我有一个有趣的难题,我正试图解决。我使用的是FancyBox,使用它时,需要加载
iframe
时有
href
标记和
url
设置

在当前的表单中,用户选择一个正方形,然后输入一个数量,然后单击一个按钮,该按钮将启动(打开)fancybox

我想让它做的是修改
href url
过程中的每一步

例如,启动
url
就是说:

http://www.domain.com/do.php
在正方形的
上单击
,它将变为

http://www.domain.com/do.php?s=3
然后,在输入金额时,
url
会附加以下内容:

http://www.domain.com/do.php?s=3&amount=20
我发现了一些关于更改
url
的引用,但它们似乎都在更改浏览器历史记录的
url
。所以我想知道是否有人能带领我朝着正确的方向前进,这样我就能完成这个任务


非常感谢您的任何见解。谢谢

是否要更改iframe的href

你试过简单地把它设置成这样吗

$('#square').click(function(){
   $('iframe').attr('href', $('iframe').attr('href') + '?s=3')
})

$('#amount_button').click(function(){
   $('iframe').attr('href', $('iframe').attr('href') + '&amount=' + $('#amount').val())
})

您可以使用以下方法附加到URL:

HTML

<input type="button" id="btnGo" onclick="getUrl()"/>

如果我正确理解您的问题,您必须重新加载Iframe的url。 有一个简单的javascript唯一的解决方案。请参见此处的示例:

正在上载Iframe的
src
属性:

function appendToUrl(str){
    document.getElementById('f1').src += str;
}

在您的情况下,第一个参数是
?s=3
,第二个参数是
&amount=20

,但需要发生的事情也取决于用户的交互。因此,当他们单击正方形时,输入一个金额。每一个都会进行单独的调用并附加url。好的,很接近了,但是我如何处理第二个调用?如果设置为?s=3,那么当需要追加金额时,该怎么办?s=3&amount=10我需要查看您的代码才能回答这个问题。但是,您应该能够将
getUrl
函数附加到您需要启动它的事件的任何事件处理程序。当用户输入金额时,他们是否单击“输入”按钮或其他什么?当用户输入完他们的金额时,用来知道的标识符是什么?顺便说一句,如果我没有弄错的话,它似乎会得到浏览器的url,相反,我希望更改iframe当前html代码中的url并附加到它。好的,谢谢链接。这有点道理。在这种情况下,我不担心在他们单击时附加到URL。我只需要建立一个字符串,一旦他们输入amount后选择了这个人,然后刷新iframe到最终的url。这是可行的,还是有点像第一次点击是过滤数据,而数量可能是可选的第二条过滤数据?你是通过$\u GET?GET还是Post发送数据?其实并不重要。你是否查看过
窗口。pushState
API?我不相信这与我正在尝试做的事情有关。除非我错了,否则这与浏览器URL直接相关。这不是我想要实现的。
function appendToUrl(str){
    document.getElementById('f1').src += str;
}