使用javascript动态禁用选择框

时间:2015-12-18 13:57:48

标签: javascript php jquery html

我正在尝试创建一个html选择框,根据用户在不同选择框中选择的内容动态禁用和启用...当我只使用html时,这工作正常,但我想使用jQuery插件选择这个,它不起作用...我需要动态选择被禁用或启用的主要事项基于另一个选择框的onchange。选择这可能吗?如何?非常感谢。

旧代码:工作 g

<script>
function myDisable() {
a=1;
b=3;
    for (i=1;i<3;i++){
          posi=a+b*i;
          document.getElementById('drop'+posi).disabled = true;
} } 
</script>

使用PHP的新代码:无法正常工作

<script>
function myDisable() {
a=<?php echo $angka; ?>;   // a variable number for id select box
b=<?php echo $fields; ?>;  // b variable number of many fields table
j=<?php echo $jp; ?>;      // j variable number of select boxes that will disable 
    for (i=1;i<j;i++){
          posi=a+b*i;
          document.getElementById('drop'+posi).disabled = true;
} } 
</script>

PHP选择框循环+/- 50:

<select name="modul[]" id="drop<?php echo $angka ?>" onchange="fetch_select<?php echo $random ?>(this.value); check(this); myDisable();">
           <option value="0">Lanjutan</option>
           <?php
             include 'include/conn.php';
             $select=mysql_db_query(@$db,"select nama_modul,jp from modul where nama_pelatihan='$nama_pelatihan'",@$koneksi);
             while($row=mysql_fetch_array($select))
             {
                 $jp=$row['jp'];
              echo "<option value='".$row['nama_modul']."'>".$row['nama_modul']."(".$row['jp'].")</option>";
             }
           ?>
         </select>

1 个答案:

答案 0 :(得分:0)

在退出$("#form_field").trigger("chosen:updated");功能之前,尝试在for循环后执行对myDisable()的调用。在您的情况下,#form_field将是一些标识您的html选择框元素的选择器。选择可能需要重新绘制以反映更新的选项,这就是我们如何告诉它这样做。