【问题标题】:chained select jquery php mysql repeat链式选择 jquery php mysql 重复
【发布时间】:2025-02-15 21:55:01
【问题描述】:

示例 MySql 表(还有一个 id 列):

+----------------------------------+
| one  | two | three | four | five |
+----------------------------------+
| v1   | v2  | v3    | v4   | v9   |
+----------------------------------+
| v1   | v2  | v6    | v8   | v9   |
+----------------------------------+
| v1   | v7  | v6    | v4   | v10  |
+----------------------------------+
| v11  | v7  | v12   | v4   | v10  |
+----------------------------------+
| v11  | v2  | v3    | v8   | v5   |
+----------------------------------+

Here插件是如何工作的。

我想使用 mysql 中的值创建 5 个链式选择框。我可以使用简单的查询进行这样的输出;

$result4 = mysql_query("SELECT * FROM table");
while($row4 = mysql_fetch_array($result4))
  {
  echo '<option value="'.$row4['four'].'" class="'.$row4['three'].'">'.$row4['four'].'</option>';
  }

它给出了这个;

<select id="model" name="model">
  <option value="">--</option>   
  <option value="v4" class="v3">v4</option>
  <option value="v4" class="v6">v4</option>
  <option value="v4" class="v12">v4</option>
  <option value="v8" class="v6">v8</option>
  <option value="v8" class="v3 v6">v8</option>
</select>

但有些价值观会重复。例如,一个“三”有多个“二”。输出应该是这样的;

<select id="model" name="model">
  <option value="">--</option>   
  <option value="v4" class="v3 v6 v12">v4</option>
  <option value="v8" class="v6 v3">v8</option>
</select>

我怎样才能做到这一点? (基于表行的多个类名)

【问题讨论】:

  • 这些“series-x”和“aY”内容与您的示例表中的v1v2 等有什么关系?
  • @MarcB 一 > 二 > 三 > 四 > 五 当用户选择第一个包含“一”的选择时,其他选择应显示“二”和选择的“一”。但是选择不会有多个具有相同值的选项(这部分我卡住了)。输出来自插件页面上的示例。
  • 对我来说仍然毫无意义......
  • @MarcB 我根据表格编辑了样本。我怎样才能使输出像第二?
  • 这将是快速的解决方法:dev.mysql.com/doc/refman/5.0/en/…

标签: php jquery mysql select


【解决方案1】:

如果你想使用 v3 v6 v12 类,并使用 GROUP by 来获得你想要的结果 然后改用这个sql

   $result4 = mysql_query("SELECT one ,two,group_concat(three SEPARATOR ' ') three, four , five FROM table_1 group by four ");

DEMO SQL FIDDLE

【讨论】:

  • 我不知道这对你有没有帮助?
  • 谢谢,但这无济于事。检查问题 cmets。那个 jQuery 插件使用类来建立关系。我在值中有空格。
  • 你的意思是这个班里有空格?如果是,那么我的代码是正确的,它会为您提供带空格的值。你试过了吗?
  • 表值有空格。 v3 v6 只是示例。值类似于信息/关于通行证/密码重置/..