0

我的Symfony 项目中有一个使用 Ajax 和 jQuery 的动态表单。

我有一个多项选择。我想在这个多重选择中,当我选择值 id 7(即“外部”)时,所有其他值都是不可选择的。

这是我的树枝视图中脚本的代码:

function checkOption(obj) {
        var select = document.getElementById("mySpace_databasebundle_zonestechnique_batiments");
        select.disabled = obj.value == "7";
      }

这是我的树枝视图中的表单代码。只要知道我正在使用一个集合,即 Symfony 表单的 formType 来制作这个表单:

<div>
                {{ form_label(form.categorieszonestechnique, "Categorie(s) de la zone technique:", {'label_attr': {'class': 'control-label'}}) }}
                {{ form_errors(form.categorieszonestechnique) }}
                {{ form_widget(form.categorieszonestechnique, {'attr': {'class': 'selectpicker categories', 'onChange': 'checkOption(this)'}}) }}
              </div>

              <div>
                {{ form_label(form.batiments, "Appartenant au bâtiment:", {'label_attr': {'class': 'control-label'}}) }}
                {{ form_errors(form.batiments) }}
                {{ form_widget(form.batiments, {'attr': {'class': 'form-control', 'option selected': '--choose abâtiment--'}}) }}
              </div>

因此,当我选择选项 7 时,即“外部”时,我想让多项选择的所有其他值都无法选择。然后为“batiments”的选择标签的以下字段设置默认值(空值)。

多选(selectpicker)的id, batiments的select标签id是。mySpace_databasebundle_zonestechnique_categorieszonestechniquemySpace_databasebundle_zonestechnique_batiments

有人知道如何使我的多项选择的所有其他值无法选择,然后将空值放入以下字段,即 batiments 的选择标签。

4

1 回答 1

0

 function lock() {
   $("input").prop('disabled', true);
   $("select").prop('disabled', true);
};


 function unlock() {
   $("input").prop('disabled', false);
   $("select").prop('disabled', false);
};
<form>
  <input type="checkbox" id="pizza" name="pizza" value="yes"><br/>
  <input type="radio" name="radio" id="radio" value="Yes">
  <input type="radio" name="radio" id="radio" value="No"><br/>
  <select id="pizza_kind">
    <option>(choose one)</option>
    <option value="margaritha">Margaritha</option>
    <option value="hawai">Hawai</option>
  </select><br/>
      <select id="pizza_kind1">
    <option>(choose one)</option>
    <option value="margaritha">Margaritha</option>
    <option value="hawai">Hawai</option>
  </select><br/>
 <button name="freez" onClick="lock()">Lock</button>
  <button name="freez" onClick="unlock()">Unlock</button>
</form>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

我想这就是我从你的解释中理解的。如果不是您想要的,请告诉我

于 2015-04-10T14:58:02.660 回答