【问题标题】:Select randomly options from select and display the output accordingly从 select 中随机选择选项并相应地显示输出
【发布时间】:2020-10-08 21:55:54
【问题描述】:

我有一个带有多项选择的选择下拉菜单。我可以选择多个选项。

<!DOCTYPE html>
<html>
<head>
  <title></title>
</head>
<body>
  <form action="process.php" method="post" multiple="multiple">
    <select name="demo[]" multiple="multiple">
      <option value="1">Demo1</option>
      <option value="2">Demo2</option>
      <option value="3">Demo3</option>
      <option value="4">Demo4</option>
      <option value="5">Demo5</option>
      <option value="6">Demo6</option>
    </select>
    <input type="submit" name="" value="Submit">
  </form>
</body>
</html>

进程.php

<?php 
echo"<pre>";
print_r($_POST['demo']);
 ?>

我选择12 选项,我得到的输出低于正确的输出

Array ( 
[0] => 1 
[1] => 2
 ) 

现在我的问题是,首先我选择 1、3、5,然后选择 2,4 选项。那么是否可以像这样显示输出

   Array ( 
    [0] => 1 
    [1] => 3
    [2] => 5
    [3] => 2
    [4] => 4 
     )

尝试 matthias_h 后回答

【问题讨论】:

    标签: php html jquery arrays select


    【解决方案1】:

    Array 输出的格式与您的示例有点不同,可以进行调整,但结果是您正在寻找的结果。

    var selection = [];
    var count = 0;
    $("select[name='demo[]']").on("change", function() {
      var selected = $(this).val();
      for (var i = 0; i < selected.length; i++) {
        selection.push("[" + count + "] : " + selected[i]);
        count += 1;
      }
      console.log(selection);
    });
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <form action="process.php" method="post" multiple="multiple">
      <select name="demo[]" multiple="multiple">
        <option value="1">Demo1</option>
        <option value="2">Demo2</option>
        <option value="3">Demo3</option>
        <option value="4">Demo4</option>
        <option value="5">Demo5</option>
        <option value="6">Demo6</option>
      </select>
      <input type="submit" name="" value="Submit">
    </form>

    【讨论】:

    • 感谢您的回答,我尝试了您的回答,并在问题中添加了输出。请检查一下
    • 我选择控制按钮并选择选项。第二,如何将数据发送到进程?
    • @NarenVerma 难道你不能在表单中添加一个隐藏字段,并在每次选择更改时将此字段的值设置为数组吗?
    • 你的意思是我必须像这样使用
    • @NarenVerma 是的,虽然我不得不承认我不确定它是否有效,但你可以试一试。
    猜你喜欢
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-01
    • 2017-04-27
    • 2014-07-09
    • 2014-09-29
    相关资源
    最近更新 更多