簡體   English   中英

創建后禁用“選擇框”選項

[英]Disable Select Box option after its creation

我有一個從mySQL數據庫動態創建的選擇框,然后使用函數在Index [0]處添加“請選擇”選項,然后我將Index [0]強制為選擇的選項。 我的問題是試圖弄清楚如何在創建索引[0]后禁用它,或者也許在我的函數創建過程中必須這樣做。 因此,最終,“請選擇”選項不是有效的可選選項。

在此先感謝您的任何建議。

 <?php
 $con = mysqli_connect("localhost","root","","karaoke");

 // Check connection
 if (mysqli_connect_errno())
 {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
  $sql = "Select * FROM regulars ORDER BY Regulars ASC";
  $result = mysqli_query($con, $sql) or die("Bad SQL: $sql");
  $opt = "<select id = 'regulars' name = 'regulars'>";

  while($row = mysqli_fetch_assoc($result)) {
      $opt .= "<option value'{$row['Regulars']}'>{$row['Regulars']}</option>\n";
   }
 $opt .="</select>"
 ?>

 <center><div>
 <?php
 echo $opt;
 ?>

 </div></center>

 <script>
  function myFunction() {
   var x = document.getElementById("regulars");
   var option = document.createElement("option");
   option.text = "Please Select";
   x.add(option, x[0]);
  }
  </script>

  <script>
  myFunction()
  document.getElementById("regulars").selectedIndex = "0";
  </script>

只需將新創建的選項的disabled屬性設置為true

 function myFunction() { var x = document.getElementById("regulars"); var option = document.createElement("option"); option.text = "Please Select"; option.disabled = true; x.add(option, x[0]); } myFunction(); document.getElementById("regulars").selectedIndex = "0"; 
 <select id="regulars"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> 

最簡單的方法是用PHP完成所有操作。 無需所有js添加該選項。 優點是它將成為DOM的一部分,以后更易於操作(即刪除已禁用的DOM)

 <?php
 $con = mysqli_connect("localhost","root","","karaoke");

 // Check connection
 if (mysqli_connect_errno())
 {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
  $sql = "Select * FROM regulars ORDER BY Regulars ASC";
  $result = mysqli_query($con, $sql) or die("Bad SQL: $sql");
  $opt = "<select id = 'regulars' name = 'regulars'>";
  $opt .= "<option value=\"\" disabled>Please select...</option>";
  while($row = mysqli_fetch_assoc($result)) {
      $opt .= "<option value'{$row['Regulars']}'>{$row['Regulars']}</option>\n";
   }
 $opt .="</select>"
 ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM