繁体   English   中英

选项选择值和optgroup PHP

[英]option selected value and optgroup PHP

我有一个与此类似的代码,这很好用,但是我正在寻找一种使代码更短的方法,但是我不知道如何执行此操作,因为它会检查数据库中的选定值,然后选择选项+选项具有自己的optgroup

<select name="server">
  <?php if ($server == 'A') { ?>
  <optgroup label="Label 1">
    <option value="A" selected="selected">A</option>
    <option value="B">B</option>
  </optgroup>
  <optgroup label="Label 2">
    <option value="C">C</option>
    <option value="D">D</option>
  </optgroup>
  <?php } else if ($server == 'B') { ?>
  <optgroup label="Label 1">
    <option value="A">A</option>
    <option value="B" selected="selected">B</option>
  </optgroup>
  <optgroup label="Label 2">
    <option value="C">C</option>

and so on...

你们知道如何在php中执行此操作吗? 任何帮助表示赞赏,谢谢

您可以使用三元实现

<select name="server">
  <optgroup label="Label 1">
    <option value="A" <?php $server == 'A' ? echo 'selected="selected"' : ''; ?>>A</option>
    <option value="B" <?php $server == 'B' ? echo 'selected="selected"' : ''; ?>>B</option>
  </optgroup>
  <optgroup label="Label 2">
    <option value="C">C</option>
    <option value="D">D</option>
  </optgroup>

另一种选择是使用javscript。 只需将服务器放入数据标签中,然后在脚本中获取它:

<select name="server" data-server="<?= $server; ?>">
      <optgroup label="Label 1">
        <option value="A">A</option>
        <option value="B">B</option>
      </optgroup>
      <optgroup label="Label 2">
        <option value="C">C</option>
        <option value="D">D</option>
      </optgroup>
</select>

<script>

    var select = document.querySelector('select[name="server"]');
    var server = select.getAttribute('data-server');
    select.querySelector('option[value="' + server + '"]').setAttribute('selected', 'selected');

</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM