当前位置: 首页 > news >正文

在c:forEach作用域外使用标签所产生的值

问题描述

今天遇到个小问题,问题描述:选择挂号医生时,挂号费用随之改变。下拉框的值是通过EL赋值。如图:

解决方法:

1、利用ajax异步发送请求,但是这里两个值在一起返回的,没必要再重新做一次查询。

2、在js中再遍历一次,当它们id 相同时,给input 框赋值。

$("#paiBanDoctor").bind('change ',function(){
    $.each(doctorList,function(key,item){ 
          var doctorList = jQuery.parseJSON( partList);        
               console.log("key"+key+",item:"+item.departNo);
        //返回结果为null时,转换成空字符串
           $("#"+key).val(item||"");
               //input框赋值
             ......
    })    
});

3、在原JSP页面中将这些值封装进hidden域,然后传给js文件,比较直接的一种做法,但在后期维护时候可能会引起歧义(例如过一段时间后看JSP页面时候不知道这些hidden是干嘛的了)

4、在JSP页面中先声明一个<script></script>,在其中将你要传递的EL表达式作为全局变量写入,然后再导入外部JS代码

<script type="text/javascript">  
var arr = new Array();  
var count = 1;  
     <c:forEach items="${doctorList}" var="dto" >  
        arr[count] = new Array();  
        arr[count][1] = "${dto.id}";  
        arr[count][2] = "${dto.registerFee}";  
        arr[count][3] = "${dto.doctorName}";    
        count++;  
        </c:forEach>  
</script> 

5、最后想到一种很简单的办法,具体做法,将需要的几个值拼接起来,通过select绑定change事件,将需要的值分割出来,赋值给input框。(推荐)

<select id="paiBanDoctor" class="js-example-placeholder-single js-states form-control">
    <option value="">请选择</option>
      <c:forEach items="${doctorList}" var="doctor">
      <option value="${doctor.id}@@${doctor.doctorName}@@${doctor.registerFee}">${doctor.doctorName}</option>
    </c:forEach>
</select>
$("#paiBanDoctor").bind('change ',function(){

           var doctorInfo = $(this).val();
           var doctorId=doctorInfo.split("@@")[0];
           var registerFee=doctorInfo.split("@@")[3];
           $("#registerFee").val(registerFee);
});

 

转载于:https://www.cnblogs.com/magic101/p/8557428.html

相关文章:

  • 04-手机套餐:建造者模式
  • css总结1:position定位:absolute/relative/fixed
  • zzw原创_非root用户启动apache的问题解决(非root用户启动apache的1024以下端口)
  • SQL循环语句 详解
  • OpenCV问题集锦
  • 20154327 Exp1 PC平台逆向破解
  • ios 通知与通知传值2018.03.17
  • 20155307《网络对抗》PC平台逆向破解(二)
  • 273. Integer to English Words
  • DevOps是一种文化,不是角色!
  • 00004、python+selenium 的三种时间等待方式
  • SQL SERVER存储过程一
  • HTML中nbsp; ensp; emsp; thinsp;等6种空白空格的区别
  • P1280 尼克的任务
  • 动态代理和AOP
  • [译]如何构建服务器端web组件,为何要构建?
  • 【comparator, comparable】小总结
  • Android交互
  • canvas 高仿 Apple Watch 表盘
  • Fastjson的基本使用方法大全
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • JS笔记四:作用域、变量(函数)提升
  • Js基础知识(四) - js运行原理与机制
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • Redis字符串类型内部编码剖析
  • VUE es6技巧写法(持续更新中~~~)
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 两列自适应布局方案整理
  • 猫头鹰的深夜翻译:JDK9 NotNullOrElse方法
  • 前端代码风格自动化系列(二)之Commitlint
  • 实现菜单下拉伸展折叠效果demo
  • 实战|智能家居行业移动应用性能分析
  • 我从编程教室毕业
  • 自制字幕遮挡器
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 交换综合实验一
  • ​【已解决】npm install​卡主不动的情况
  • #includecmath
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (C#)一个最简单的链表类
  • (C)一些题4
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (Forward) Music Player: From UI Proposal to Code
  • (pytorch进阶之路)扩散概率模型
  • (八)c52学习之旅-中断实验
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • .NET Core Web APi类库如何内嵌运行?
  • .net core 控制台应用程序读取配置文件app.config
  • .net core使用ef 6
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)
  • .Net转Java自学之路—基础巩固篇十三(集合)
  • [ Linux ] Linux信号概述 信号的产生
  • []FET-430SIM508 研究日志 11.3.31
  • [C/C++] C/C++中数字与字符串之间的转换
  • [exgcd] Jzoj P1158 荒岛野人