加载此文件时禁用Javascript

加载此文件时禁用Javascript,javascript,jquery,Javascript,Jquery,我的Symfony2.4项目有问题。我有2个选择和2个单选按钮 我想禁用第一个,并在每次单击时启用第二个。这里是我的代码 <div class="row"> <div class="col-lg-3 col-md-3 ui-sortable"> <span class="ui-spinner ui-widget ui-widget-content ui-corner-all"

我的Symfony2.4项目有问题。我有2个选择和2个单选按钮 我想禁用第一个,并在每次单击时启用第二个。这里是我的代码

<div class="row">
                      <div class="col-lg-3 col-md-3 ui-sortable">
                        <span class="ui-spinner ui-widget ui-widget-content ui-corner-all">
                        <input type="radio" name="group1" value="mensuelle" checked="checked"style="opacity: 1!important;" /> Mensuelle   
                        </span>
                        </div>
                      <div class="col-lg-3 col-md-7 ui-sortable">
                        <span class="ui-spinner ui-widget ui-widget-content ui-corner-all">
                        <input type="radio" name="group1" value="trimestre"style="opacity: 1!important;" /> Trimestre    
                        </span>
                        </div>
                      <div class="col-lg-3 col-md-3 ui-sortable">
                        <span class="ui-spinner ui-widget ui-widget-content ui-corner-all">

                        <select id="mois" name="mois" class="form-control" size="1">
                          <option value="Janvier">Janvier</option>
                          <option value="Fevrier">Fevrier</option>
                          <option value="Mars">Mars</option>
                          <option value="Avril">Avril</option>
                          <option value="Mai">Mai</option>
                          <option value="Juin">Juin</option>
                          <option value="Juillet">Juillet</option>
                          <option value="Aout">Aout</option>
                          <option value="Septembre">Septembre</option>
                          <option value="Octobre">Octobre</option>
                          <option value="Novembre">Novembre</option>
                          <option value="Decembre">Decembre</option>
                        </select>
                        </span>
                        </div>
                      <div class="col-lg-3 col-md-4 ui-sortable">
                          <span class="ui-spinner ui-widget ui-widget-content ui-corner-all">
                          <select id="trimest" name="trimest" class="form-control" size="1">    
                            <option value="1er Trimestre">1er Trimestre</option>
                           <option value="2eme Trimestre">2eme Trimestre</option>
                           <option value="3eme Trimestre">3eme Trimestre</option>
                           <option value="4eme Trimestre">4eme Trimestre</option>
                         </select>    

                          </span>
                        </div>

门苏埃尔
三性期
詹维尔
发烧的
火星
艾薇儿
市场关注度指数
朱因
朱丽叶
奥特
塞唐布尔
十月
诺文布雷
十二月
第1季度
第二次三季度
3eme三部曲
4eme三部曲
这是剧本:

    <script type="text/javascript">


                     document.getElementById('trimest').disabled=true;

                    $('input:radio[name="group1"]').change(function() {
                      if ($(this).val() === 'mensuelle') {
                        // append stuff
                        document.getElementById('trimest').disabled=true;
                        document.getElementById('mois').disabled=false;

                      }
                      else {
                        document.getElementById('trimest').disabled=false;
                        document.getElementById('mois').disabled=true;
                      }
                    });


   </script>

document.getElementById('trimest').disabled=true;
$('input:radio[name=“group1”]”)。更改(函数(){
if($(this).val()=='mensuelle'){
//附加内容
document.getElementById('trimest').disabled=true;
document.getElementById('mois')。disabled=false;
}
否则{
document.getElementById('trimest')。disabled=false;
document.getElementById('mois').disabled=true;
}
});
我在这里没有问题,但是当我在我的页面中包含这个文件时,脚本就不起作用了


也许JS代码是在DOM完全设置之前执行的

尝试以下方法:

$(document).ready(function() {
  //Your Code
 });
当您使用它时,您的脚本将在DOM设置完成后执行,所有输入等都可以通过jQuery访问

请参阅(good idea@sebnukem)

假设JQuery已正确加载

在文档“就绪”之前,无法安全地操作页面。请确保DOM就绪后JS代码正在运行:

<script type="text/javascript">
$(function() { // add this
  document.getElementById('trimest').disabled=true;

  $('input:radio[name="group1"]').change(function() {
    console.log('radio button clicked'); // do you see this?
    if ($(this).val() === 'mensuelle') {
      // append stuff
      document.getElementById('trimest').disabled=true;
      document.getElementById('mois').disabled=false;
    } else {
      document.getElementById('trimest').disabled=false;
      document.getElementById('mois').disabled=true;
    }
  });
); // and this
</script>

$(函数(){//添加此
document.getElementById('trimest').disabled=true;
$('input:radio[name=“group1”]”)。更改(函数(){
console.log('单击单选按钮');//您看到了吗?
if($(this).val()=='mensuelle'){
//附加内容
document.getElementById('trimest').disabled=true;
document.getElementById('mois')。disabled=false;
}否则{
document.getElementById('trimest')。disabled=false;
document.getElementById('mois').disabled=true;
}
});
);//还有这个


你的控制台怎么说?

你确定在DOM准备好后运行JS代码吗?是的,我告诉过你,如果我删除forms.JS文件,我没有问题,但问题是当我包含该文件时,你没有在你的问题中提到任何“form.JS”…这里是forms.JS。同样的问题:'(我不知道该怎么做)考虑使用“DPPX”单元,如CSS’DPI’,意味着每个CSS英寸的点,而不是每个物理英寸的点,因此不对应于屏幕的实际“DPI”。在媒体查询表达式中:只有屏幕和(-WebKIT最小设备像素比:1.5),只有屏幕和(最小分辨率:144DPI)。考虑使用“DPPX”单元,如CSS’DPI’,意味着每个CSS英寸点,而不是每个物理英寸点数,因此不对应于屏幕的实际“DPI”。在媒体查询表达式中:只有屏幕和(-WebKIT最小设备像素比:2),只有屏幕和(最小分辨率:144DPI)。