Jquery修改时下拉框级联初始化问题

做CRUD时,点击一条数据进行修改。如果数据中有下拉框,怎样初始化是一个问题。以下是我的办法:

<select id="yearId" name="studentInfoVo.yearId" class="easyui-validatebox" validType="requiredSelect['-1','请选择学年度']" οnchange="selectGrade(this);">
          <option value="-1" >--请选择学年度--</option>
          <s:iterator value="classYearList">
             <option value="<s:property value='yearId' />">
              <s:property value='yearName' />
             </option>
            </s:iterator>
</select>

<select class="easyui-validatebox" validType="requiredSelect['-1','请选择年级']" disabled="disabled" id="gradeId" name="studentInfoVo.gradeId" οnchange="selectClass(this)">
          <option value="-1" >--请选择年级--</option>
</select>
         
<select id="classId" class="easyui-validatebox" validType="requiredSelect['-1','请选择班级']" id="classId" disabled="disabled" name="studentInfoVo.classId">
          <option value="-1">--请选择班级--</option>
</select>

 

解释:学年度和年级是级联的,年级和班级也是级联的。

初始化方法:

//学年度初始化
  <s:if test="studentInfoVo.yearId!=null || !studentInfoVo.yearId.isEmpty()">
   $("#yearId option[value='<s:property value='studentInfoVo.yearId' />']").attr("selected",true)

也可以直接用 $("#yearId ").val("<s:property value='studentInfoVo.yearId' />");

但是这在IE8和firefox下都是没有问题的,但是在IE6下,就会出现问题了。

则就用以下方法解决问题:

 setTimeout(function() { 
           $("#yearId ").val("<s:property value='studentInfoVo.yearId' />");

          })

  </s:if>
  //年级初始化
  <s:if test="studentInfoVo.gradeId!=null || !studentInfoVo.gradeId.isEmpty()">
   $("#gradeId").attr("disabled",false);
   <s:iterator value="classGradeList">
    $("<option>"+"<s:property value='gradeName' />"+"</option>").appendTo("#gradeId").val("<s:property value='gradeId' />");
         </s:iterator>
   //$("#gradeId option[value='<s:property value='studentInfoVo.gradeId' />']").attr("selected",true)
   setTimeout(function() {
           $("#gradeId").val("<s:property value='studentInfoVo.gradeId' />");
          })
  </s:if>
  //班级初始化
  <s:if test="studentInfoVo.classId!=null || !studentInfoVo.classId.isEmpty()">
   $("#classId").attr("disabled",false);
   <s:iterator value="schoolClassVoList">
    $("<option>"+"<s:property value='className' />"+"</option>").appendTo("#classId").val("<s:property value='classId' />");
         </s:iterator>
   //$("#classId option[value='<s:property value='studentInfoVo.classId' />']").attr("selected",true)
   setTimeout(function() {
           $("#classId").val("<s:property value='studentInfoVo.classId' />");
          })
  </s:if>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值