我正在使用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 所以有可能或没有。 或另一种获得该方法的方法。 请帮忙。 在此先感谢。
答案 0 :(得分:6)
由于您手动更改值。您需要触发选择框的.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");