【问题标题】:dynamic select boxes related to one other in jspjsp中相互关联的动态选择框
【发布时间】:2013-03-19 13:19:00
【问题描述】:

我有两个列表,例如部门和经理,我将这两个列表放在请求范围内。 现在我想在选择框中显示两个列表,这样当用户选择一个部门时,相应的经理应该默认出现在下一个选择框中。如果我想更换经理,我可以选择任何其他并保存。

我的jsp是这样的。 第一个包含部门的选择框。

<select id="dname" name="Name" onchange="autoPopulateModifydept();">
       <option value="">-Select</option>
       <c:forEach var="departmentList" items="${departmentList}">
           <option value='${departmentList.getDepartment()}@${departmentList.getId()}'>${departmentList.getDepartment()}</option>
       </c:forEach>
</select>

第二个有managerlist的选择框。

<select  id="deptHead" name="deptHead" onchange="autoPopulatedeptHead();">
       <option value="">-Select-</option>
            <c:forEach var="projectmanager" items="${projectManagerList}">
            <option value='${projectmanager.getProjectManagerName()}@${projectmanager.getPmId()}'>${projectmanager.getProjectManagerName()}</option>
            </c:forEach>
</select>

这里的部门 getId 和经理的 getPmId 是一样的。 基于此,我想链接两个选择框。 如何做到这一点。

【问题讨论】:

  • 更多详情:每个部门的经理是否都备有部门物品?还是您需要调用服务器来获取所选部门的经理?
  • 部门和经理列表有一个共同的属性ID。基于此,应该进行比较。
  • 用户选择一个部门。这意味着将选择一个相应的 id。基于此,经理应出现在与经理 ID 匹配的经理选择框中。
  • 请问有人能回答吗???

标签: java javascript spring jsp jstl


【解决方案1】:

这可以使用 javascript 来完成,请参阅下面的示例。在更改第一个列表选择时调用此方法,并将第一个列表的选定值与第二个列表进行比较,并使第二个列表与匹配的第一个列表 Id 值匹配。

function changeMangerId(){ 
var emplId =document.getElementById("firstList").value;
<c:forEach var="paramObj"
    items="${managerList}]
var managerIdId= '<c:out value="${Id}"/>';
             if(emplId)!= null && (emplId)!= '' && trim(emplId)=== trimm(anagerIdId) {
                 $("#SecondListId option[value='"+ managerIdId +"']").attr("selected", "selected");
          }
</c:forEach>
}

【讨论】:

    猜你喜欢
    • 2018-01-29
    • 1970-01-01
    • 2015-09-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-25
    • 2016-04-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多