0

我正在构建一个网页,用于使用引导程序下载我的一个应用程序。我正在尝试制作一个下载页面,并且上面有一些选项,我需要根据选择的选项更改下载链接。我有 gui,但我真的不知道如何更改链接。

到目前为止,我的代码是这样的:

http://jsfiddle.net/xdragonforce/2fta6/

谢谢!

4

2 回答 2

3

您通常使用表单传递这些参数,并让服务器解析 URL 参数并发送/重定向到适当的文件。这不是 HTML 的工作。

你需要:

  • 使用一个<form>元素,该元素提交到可以处理它的服务器端(PHP、ASP 等)页面。
  • 给你的<select>元素name=属性,这些属性代表它们在表单中的滚动。
  • 在处理页面上,您获取用户选择的表单参数,处理它们,确定您要提供的文件的正确版本,并提供它(或重定向到提供它的页面)。
于 2012-09-09T16:44:51.133 回答
1

像这样的东西会达到你的要求。

<!DOCTYPE html>
<html>
<head>
<script>
function changeLink(newHref)
{
    downloadBtn.href = newHref;
    if (newHref == "")
        downloadBtn.setAttribute('disabled', 'true');
    else
        downloadBtn.setAttribute('disabled', 'false');
}
</script>
<style>
#downloadBtn
{
    text-decoration: none;
    background-color: #49AFCD;
    padding: 4px;
    cursor: pointer;
    border-radius: 4px;
    color: white;
}
#downloadBtn:hover
{
    background-color: #2F96B4;
}
</style>
</head>
<body>
    <h2>Select your device</h2>
    <select id='m_List1' onchange='changeLink(this.value);'>
        <option value="" selected>Select an device type</option>
        <option value="http://sourceforge.net/projects/whited00r/files/5.2.1/Whited00r_521N_iPhone2G.zip/download">iPhone 2G (521N)</option>
        <option value="http://sourceforge.net/projects/whited00r/files/5.2.1/Whited00r_521U_iPhone2G.zip/download">iPhone 2G (521U)</option>

        <option value="http://sourceforge.net/projects/whited00r/files/5.2.1/Whited00r_521N_iPhone3G.zip/download">iPhone 3G (521N)</option>
        <option value="http://sourceforge.net/projects/whited00r/files/5.2.1/Whited00r_521U_iPhone3G.zip/download">iPhone 3G (521U)</option>

        <option value="http://sourceforge.net/projects/whited00r/files/5.2.1/Whited00r_521_iPodTouch1G.zip/download">iPadTouch 1G</option>
        <option value="http://sourceforge.net/projects/whited00r/files/5.2.1/Whited00r_521_iPodTouch2G.zip/download">iPadTouch 2G</option>
    </select>
    <a id='downloadBtn' disabled='true'>Download »</a>
</body>
</html>
于 2012-09-09T17:09:34.553 回答