选择框的转换事件

时间:2012-10-31 08:55:12

标签: jquery html

我正在使用onchange event of select box和jquery。 在改变时,我在其他div中给了display property = none。 问题是当我从数据库获取数据并将其设置在选择框中时,因此onchange属性不适用于给定值。为什么? 我的代码

<select id="patientType" name="Patient_Type">
<option value="">--SELECT--</option>
<option value="OPD">OPD</option>
<option value="IPD">IPD</option>
</select>
<div id="roomInfo" clasas="inactive"></div>

脚本

$('#patientType').change(function() {
 if ($('#patientType').val() == 'IPD') {
  if ($('#roomInfo').hasClass('inactive')) {
   $('#roomInfo').removeClass('inactive');// CSS Property Display None in this class
   $('#roomInfo').addClass('active');
  }
 } else {
  if ($('#roomInfo').hasClass('active')) {
     $('#roomInfo').removeClass('active');
     $('#roomInfo').addClass('inactive');
    }
 }
});

现在我从数据库获取数据并将其设置为选择patientType $('#patientType')。val(从数据库中获取数据); 不能申请onchange事件申请,不能显示我的roomInfo div 所以有可能或没有。 或另一种获得该方法的方法。 请帮忙。 在此先感谢。

3 个答案:

答案 0 :(得分:6)

由于您手动更改值。您需要触发选择框的.change()事件。 请参阅以下链接。

http://api.jquery.com/change/

或者

如果你通过ajax加载数据,如下面的

$('#patientType').on("change",function() {
   //Your code here
});

答案 1 :(得分:3)

在jQuery中设置更改事件:

$("#ddl").change(function(){
    alert($(this).val());
});

答案 2 :(得分:1)

获取选择框的值并将其设置为:

$("#patientType option[value='`OPD']").attr("selected","selected");