【问题标题】:Input type=radio On change get value into a variable [closed]输入类型=收音机更改时将值转换为变量[关闭]
【发布时间】:2021-06-08 20:02:13
【问题描述】:

需要将选定的单选按钮值存储在变量中,我不知道该怎么做

<input type="radio" name="spilldeck" class="happy" id="happy" value="0" checked />
<input type="radio" name="spilldeck" class="neutral" id="neutral" value="1" />
<input type="radio" name="spilldeck" class="sad" id="sad" value="2" />

我想我可以通过添加 onchange 事件来监听点击了哪个单选按钮

<input type="radio" name="spilldeck" class="happy" id="happy" value="0" onChange="getValue(this)" checked />
<input type="radio" name="spilldeck" class="neutral" id="neutral" value="1" onChange="getValue(this)" />
<input type="radio" name="spilldeck" class="sad" id="sad" value="2" onChange="getValue(this)" />

现在我需要将选定的值存储在 $spilldeck = ......

【问题讨论】:

标签: php variables onchange


【解决方案1】:

您想根据单选按钮的值执行计算。

您更喜欢使用 php,因此必须将数据发送到服务器,否则您无法将数据分配给变量,您可以但不是 php 变量。那么你应该使用javascript,因为php是服务器端的。

<form action="YOURPAGE.php" method="POST">
  <input type="radio" name="spilldeck" class="happy" value="0"/>
  <input type="radio" name="spilldeck" class="neutral" value="1"/>
  <input type="radio" name="spilldeck" class="sad" value="2"/>
 <button type="submit">submit</button>
</form>

这将是您可以使用的表格。现在您希望将数据保存到变量中以便您可以执行计算吗?

if($_SERVER['REQUEST_METHOD'] == "POST"){
    $spilldeck = $_POST['spilldeck']
}

这样您选择的单选按钮的值就会被存储。现在您要执行计算,因为已创建了溢出甲板变量。

所以写:

if(isset($spilldeck)){
    your function, calculation whatever
}

您可以重定向到其他页面或其他任何内容。

这能解决你的问题吗?

【讨论】:

  • 如果可能的话是的
  • 嗯,用 PHP 是不可能的,因为 php 将在服务器端执行。您的单选按钮在浏览器中,因此如果您想使用 php,您必须提交表单。否则,我建议使用 javascript,以便您可以使用事件监听器将值保存到变量并使用它。
  • 我想我可以解决您的问题,但必须提交表格。你想做的计算,是用php还是其他语言链接javascript或者ajax?
  • 不......我不能给你javascript代码,你至少可以在问我完整代码之前尝试一下......
  • 我无法以 1 名声望对问题发表评论...
【解决方案2】:

示例:

<form action="YOUR_ACTION" method="post">
    <input type="radio" name="spilldeck1" class="happy" id="happy" value="0" onChange="getValue(this)" checked />
    <input type="radio" name="spilldeck2" class="neutral" id="neutral" value="1" onChange="getValue(this)" />
    <input type="radio" name="spilldeck3" class="sad" id="sad" value="2" onChange="getValue(this)" />
    <button name="submit" type="submit">Save</button>
</form>

<?php

if ($_POST['submit']) {
    $spilldeck1 = $_POST['spilldeck1'];
    $spilldeck2 = $_POST['spilldeck2'];
    $spilldeck3 = $_POST['spilldeck3'];
}




【讨论】:

  • 这并不能真正回答问题。一旦您有足够的声誉,您就可以对任何帖子发表评论。
  • 我不明白为什么我的回答没有回答这个问题。但是他的问题在于JS。我向他推荐 PHP。如果他不知道如何获取 postData,我也可以添加此解决方案。
  • 我不明白为什么我的回答没有回答问题因为你的回答中没有代码。
  • 代码并不总是解决方案。你可以通过想法获得解决方案;)
猜你喜欢
  • 2019-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-20
相关资源
最近更新 更多