选择部门下拉框











<span class="input-icon">
<!-- 
	<input autocomplete="off" id="nav-search-input" type="text"
	 name="departmentFilterName" value="${pd.departmentFilterName }" placeholder="填报人单位" />
	<i id="nav-search-icon" class="icon-search"></i>
 -->
	<input autocomplete="off" id="citySel" type="text"  class="input-medium"
	 name="departmentFilterName" value="${pd.departmentFilterName }" placeholder="填报人单位" />
	<i id="nav-search-icon" class="icon-search"></i>
	
	<div class="input-append">
		<!-- 
		<input class="input-medium" id="citySel" readonly type="text" value="${pd.department }" name="department"  placeholder="请选择部门">
		-->
		<input id="menuBtn" name="" type="button"  value="openTree"  style="display:none;"/>
	
	 </div> 
	<div id="DropdownMenuBackground" style="display:none; position:absolute;z-index:999;height:300px; min-width:266px; background-color:white;border:1px solid;overflow-y:auto;overflow-x:auto;">
		<ul id="dropdownMenu" class="tree"></ul>
	</div>
</span>





<div id="DropdownMenuBackground" style="display:none; position:absolute;z-index:999;height:300px; min-width:266px; background-color:white;border:1px solid;overflow-y:auto;overflow-x:auto;">
	<ul id="dropdownMenu" class="tree"></ul>
</div>

var  zNodesDepartments=${menuList };					
 var setting2 = {
			isSimpleData: true,
			treeNodeKey: "id",
			treeNodeParentKey: "pId",
			fontCss: setFont,
			callback: {
				beforeClick: zTreeOnBeforeClick,
				click: zTreeOnClick
			}            
};
 function zTreeOnBeforeClick(treeId, treeNode) {
		return true;
		//if()return true;
	  //  var check = (treeNode && !treeNode.isParent);
	   // if (!check) alert("只能选择部门");
	   // return check;
}
 function zTreeOnClick(event, treeId, treeNode) {
	if (treeNode) {
		var cityObj = $("#citySel");
	   // cityObj.attr("value", treeNode.name);
		cityObj.attr("value", treeNode.nodePath);
		hideMenu();
	}
}

						
							
	function showMenu(){
		var cityObj = $("#citySel");
		var cityOffset = $("#citySel").offset();
	   // $("#DropdownMenuBackground").css({left:cityOffset.left+"px",top:cityOffset.top+cityObj.outerHeight()+"px"}).slideDown("fast");   
		$("#DropdownMenuBackground").css({left:"0px",top:"30px"}).slideDown("fast");    
	}   
 function reloadTree(){
	hideMenu();
	zTree1 = $("#dropdownMenu").zTree(setting2, zNodesDepartments);
}
function hideMenu() {
	$("#DropdownMenuBackground").fadeOut("fast");
}
function setFont(treeId, treeNode) {
	if (treeNode && treeNode.isParent) {
		return {color: "blue"};
	} else {
		return null;
	}
}
					
$(document).ready(function(e) {
	reloadTree();
	
	$("#menuBtn,#citySel").bind("click",
		function(){
			if($("#DropdownMenuBackground").css("display") == "none"){
				showMenu();
			}
			else{
				hideMenu();
			}
	});
	$("body").bind("mousedown", 
			function(event){
				if (!(event.target.id == "DropdownMenuBackground" || $(event.target).parents("#DropdownMenuBackground").length>0)) {
					hideMenu();
				}
	}); 
	
	$("#doAjax").on("click",function(){
		  paginationPageNum=1;
		  paginationData= {"pd['departmentId']":($("#citySel").val()==""?"陕西省":$("#citySel").val())};				    		
		  pageReLoad();
		
	});
});

					
					
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Vue中,你可以使用v-model指令来实现下拉框的双向绑定,然后使用v-for指令来遍历部门和人员列表。下面是一个简单的示例代码: ```html <template> <div> <label for="department">部门:</label> <select v-model="selectedDepartment" @change="onChangeDepartment"> <option value="">请选择部门</option> <option v-for="department in departments" :value="department.id" :key="department.id"> {{ department.name }} </option> </select> <label for="personnel">人员:</label> <select v-model="selectedPersonnel"> <option value="">请选择人员</option> <option v-for="personnel in filteredPersonnel" :value="personnel.id" :key="personnel.id"> {{ personnel.name }} </option> </select> </div> </template> <script> export default { data() { return { departments: [ { id: 1, name: '部门A' }, { id: 2, name: '部门B' }, { id: 3, name: '部门C' } ], personnel: [ { id: 1, name: '人员A', departmentId: 1 }, { id: 2, name: '人员B', departmentId: 2 }, { id: 3, name: '人员C', departmentId: 2 }, { id: 4, name: '人员D', departmentId: 3 } ], selectedDepartment: '', selectedPersonnel: '' }; }, computed: { filteredPersonnel() { if (this.selectedDepartment === '') { return []; } return this.personnel.filter(person => person.departmentId === parseInt(this.selectedDepartment)); } }, methods: { onChangeDepartment() { this.selectedPersonnel = ''; } } }; </script> ``` 在上述示例中,我们通过data属性来存储部门和人员的数据,使用v-model指令绑定了selectedDepartment和selectedPersonnel来实现双向绑定。通过使用v-for指令,我们遍历departments和filteredPersonnel数组来生成下拉框选项。在选择部门时,我们通过@change事件监听器来重置selectedPersonnel的值,以确保选择人员的下拉框被清空。 请注意,上述代码只是一个示例,你可以根据你的具体需求进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值