【问题标题】:Using 'select' options to provide an output [closed]使用“选择”选项提供输出[关闭]
【发布时间】:2015-11-10 12:02:06
【问题描述】:

只是寻求一些快速帮助。

我正在构建一个用于下载的在线解决方案,但我不确定如何使用或使用什么解决方案。下面是我的目标的一个例子。

<select id="choice1">
<option value="tea">tea</option>
<option value="coffee">coffee</option>
</select>

<select id="choice2">
<option value="1">Milk</option>
<option value="2">Sugar</option>
<option value="3">Honey</option>

</select>

<select id="choice3">
<option value="yes">YES</option>
<option value="no">no</option>

</select>

<button type="button">Generate</button>

<p>You need to install the following:</p>

[列出这里选择的项目]

用户将从第一个 ID 中选择一个选项,然后从第二个和第三个 ID 中选择一个选项,然后根据他们的选项,将获得指向他们需要下载的内容的下载链接。

我会为此使用 PHP 吗?如果是这样,任何人都可以提供例子吗?

非常感谢!

【问题讨论】:

  • 我不明白你真正想要什么!
  • 为什么需要在服务器端生成URL?
  • PHP 只会找到它,除非您希望选择选项根据之前选择的值进行更改。
  • 做任何你觉得舒服的事。 Javascript 或 php 都可以正常工作。

标签: javascript php html forms options


【解决方案1】:

实际上你可以使用 Javascript,除非你需要在你的服务器 (PHP) 上做一些事情。我做了一个从所有选择中获取值的小例子,所以现在您可以使用这些值创建下载链接或使用 AJAX 将它们发送到您的服务器,然后从服务器返回链接。

示例(我已在您的按钮上添加了一个名为 btn 的 ID):

var btn = document.getElementById("btn");
btn.addEventListener("click",function(){
    var op1 = document.getElementById("choice1");
    var op2 = document.getElementById("choice2");
    var op3 = document.getElementById("choice3");
    v1 = op1.options[op1.selectedIndex].value;
    v2 = op2.options[op2.selectedIndex].value;
    v3 = op3.options[op3.selectedIndex].value;
    // do what you want with the three values
});

在这里运行:http://jsfiddle.net/mvt421ok/

根据需要添加 v1、v2 和 v3 的警报。

如果这不是您需要的,请尝试询问我,我会编辑此答案。

Edit1:动态 URL 更新示例: http://jsfiddle.net/mvt421ok/2/

【讨论】:

  • 您好 Neoares,感谢您的回答。基本上,我需要生成一个下载列表。所以我需要为每个值分配一个下载链接。所以如果他们选择“选择1”“选择2”和“选择3”,然后点击生成。然后它会给他们分配给他们每个人选择的 3 个下载链接
  • 我明白了,但这里的问题是您是否真的需要在您的服务器上完成这项工作。如果你只需要做,例如像这样的URL:http://example.com/download?var1=tea&amp;var2=sugar&amp;var3=no,则不需要在服务器上生成。如果是这种情况,我可以生成一个在网页上显示 URL 的小示例。
  • 不需要在服务器上完成。只需要选择他们选择的选项,然后给他们 3 个下载链接。
  • 现在查看我的版本@MrHeisenberg 希望对您有所帮助:)
  • 谢谢!我想我现在已经有了最好的解决方案:)
【解决方案2】:

是的,您可以为此使用 PHP。您需要根据用户的选择,对您选择的下载自定义记录进行查询。可能您想要的并不准确,但以下是您可以理解的类似示例。 链接是Here

【讨论】:

  • 转到它的预订页面,您会找到适当的程序。
猜你喜欢
  • 2012-09-07
  • 1970-01-01
  • 1970-01-01
  • 2023-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-13
相关资源
最近更新 更多