我如何知道在 HTML 表单中选择了哪个选项?

Posted

技术标签:

【中文标题】我如何知道在 HTML 表单中选择了哪个选项?【英文标题】:How can I know which option is selected in an HTML form? 【发布时间】:2012-09-07 13:14:52 【问题描述】:

我想要一个包含 htmlphp 的多步骤表单。 我的表单的第一步是一个选项,例如:

<input type="radio" name="service_type" value="plan1"> Plan 1<br />
<input type="radio" name="service_type" value="plan2"> Plan 2

现在,我的问题是:如何知道选择了哪个选项,以便为用户安排下一步选项?

例如:如果用户选择选项 1,下一步将是:“你选择了选项 1,告诉我谁是你的爸爸”。如果用户选择选项 2,下一步会说:“欢迎使用选项 2,告诉我你喜欢什么”等。

现在,我完全是 PHP/HTML 的初学者,对 javascript 一无所知。如果您要回答这个问题,我将非常感激,但请以易于理解的方式回答。

我已经找到this与我的案例相关,但是定制非常困难,而且验证过程是CSS3之前的。

[编辑:]

现在我想添加这样的文本类型输入:

<input type="text" name="fname" value="firstname">

这些人告诉我使用$_POST['fname'],但对于输入文本,'value' 属性将像默认标题一样显示在文本框内。我不想要这个。

现在你有什么建议?

【问题讨论】:

为每个单选按钮使用不同的 id 并使用 javascript/JQuery 检查是否选中了一个选项 你能告诉我选择第一个之后的下一步也会是一个单选按钮吗? 感谢 Umair。我知道如何为这些选项中的任何一个添加 ID。这也太容易了吧?!但是第二部分是 usgin javascript/JQuery 是什么驱使我来到这个页面! 不!下一步没有单选按钮。他们可能有一些组合框,但他们不会再改变路径。 你想让下一步有点警觉吗?用户能否在下一步中回答问题以及如何回答? 【参考方案1】:

来自$_REQUEST的值:

$step = $_REQUEST['service_type']; // plan1 or plan2

【讨论】:

我不知道 SO 有什么问题 :( 我不会弹出新问题,我必须刷新!而且我在工作.. 所以请注意我 :( $step 中会保存什么?计划1还是计划2??这么简单?! 是的,就这么简单。它将保存您选择的任何内容,plan1 或 plan2 太棒了!我想使用 session_destroy() 并重定向到同一页面来重新启动应用程序。我希望没关系,对吧?! 非常感谢您的快速解答!【参考方案2】:

在您的 PHP 代码中,使用 $_GET(或 $_POST 或 `$_REQUEST - 获取 GET 或 POST 表单)返回值:

$serveiceType=$_REQUEST['service_type'];

由于这是一个单选按钮,因此只能发送一个值,并且发送的值很容易访问。

【讨论】:

@AminVanda 我最初将$_GET 打错为$GET,Mihai 在 3 微秒内为我更正了 :) 大声笑!他是一个调试器! :D【参考方案3】:

首先您的input 必须在form 标记中。现在您可以使用提交按钮提交表单(输入标签,type="submit")。 在 php 中,您可以使用 $_POST 或 $_GET 获得结果。

<form method="POST">
    <input type="radio" name="service_type" value="plan1"> Plan 1<br />
    <input type="radio" name="service_type" value="plan2"> Plan 2
    <input type="submit" />
</form>
<?php
    $value = $_POST['service_type'];
    echo $value;
?>

【讨论】:

谢谢菲利普!我知道如何制作表格。我只是想要幕后的帮助。所以,你说我必须使用 $_POST 来获取用户选择的内容,但他们那里的人说它是 $_REQUEST。现在我越来越糊涂了! 如果您使用 get 方法发送表单,您可以使用 $_GET,如果您使用 post 方法发送 from,您可以使用 $_POST。 $_REQUEST 同时包含这两种方法。在大多数情况下,使用 $_GET/$_POST 会更好,因为您知道如何发送表单 谢谢,我要试一试!

以上是关于我如何知道在 HTML 表单中选择了哪个选项?的主要内容,如果未能解决你的问题,请参考以下文章

如何判断在 Angular-UI 中选择了哪个引导选项卡

Oracle 表单选项卡详细信息

Django 和 Bootstrap:知道哪个选项卡处于活动状态

如何使用 html 表单更新基于 django 模型的表单(具有选择选项)记录

无论选择哪个选项卡,都显示顶部栏

如何知道为 union 设置了哪个变量值?