2016-04-28 128 views
0

我遇到了一个问题,即我的第二个事件侦听器似乎没有正常执行。我正在寻找更新我的div中的文字,从下拉列表中选择每个选项,但文字只会在第一次更改时发生变化。之后,尽管下拉菜单正确触发,但文字在任何时候都不会随任何更改而更新。我觉得它一定是选择器的问题,但我不是100%肯定的,我对Jquery很新。我在下面附上小提琴来展示我的问题。任何帮助是极大的赞赏。 https://jsfiddle.net/042swvdx/4/Jquery第二次更改未触发

HTML:

<h1 style='text-align:center;'>Accu Tab Submittal Builder</h1> 
<br> 
<div style='text-align:center;'> 

    <div id='descrip'> 
     <p>Please select a chlorinator model</p> 
    </div> 
    <form id='first'> 
     <select> 
      <option selected disabled>Chlorinator Models</option> 
      <option value='Accu-tab 2075'>Accu-Tab 2075</option> 
      <option value='Accu-tab 2150'>Accu-Tab 2150</option> 
      <option value='Accu-tab 2300'>Accu-Tab 2300</option> 
      <option value='Accu-tab 2600'>Accu-Tab 2600</option> 
      <option value='POWER PRO 3075'>3075 Power Pro</option> 
      <option value='POWER PRO 3150'>3150 Power Pro</option> 
      <option value='POWER PRO 3530'>3530 Power Pro</option> 
      <option value='POWER PRO 30600'>30600 Power Pro</option> 
      <option value='POWER PRO 361000'>361000 Power Pro</option> 
      <option value='POWER PRO 481200'>481200 Power Pro</option> 
     </select> 

     <select id='second' style="display:none;"> 
      <option selected disabled>Select Flow</option> 
      <option value='Gravity'>Gravity</option> 
      <option value='Standard'>Standard</option> 
     </select> 

     <select id='third' style='display: none;'> 
      <option value='1 PH'>1 Phase</option> 
      <option value='3 PH'>3 Phase</option> 
     </select> 

     <select id='fourth' style="display:none;"> 
      <option disabled selected>Control Type</option> 
      <option>No Control</option> 
      <option>WEG</option> 
      <option>VFD</option> 
     </select> 
     <button style='display: none'>Submit</button> 

JQUERY:

$("#first").change(function() { 
    $("#descrip").html("<p>Please select the flow type for this system.</p>"); 
    $("#second").show(); 
}); 

$("#second").change(function() { 
    $("#descrip").html('<p>Please select the phase of the motor for this unit.</p>'); 
    $("#third").show(); 
}); 

$("#third").change(function() { 
    $("#descrip").html("<p>Please select units control type.</p>"); 
    $("#fourth").show(); 
}); 

$("#fourth").change(function() { 
    $("#descrip").html(""); 
    $("button").show(); 
}); 

回答

1

的问题是不是第二个事件在不触发。您的第一个“更改”事件设置为您的<form id='first'>标记。这意味着每当用户更改表单标签内的某些内容时,它将触发新的事件。我怀疑你想将你的第一个事件设置为第一个select元素。我改变了你的第一个的ID选择这样的:在的jsfiddle工作版本

<form> <select id='first'> 

here

相关问题