问题起引:页面中显示Table,它里面显示的是各分公司的统计数据,同时每行还一个链接,通过这个链接可以查看指定分公司数据详情。由于后台 没设计好,在实现此链接功能时,碰到了传中文的问题,即把具体分公司名称传到后台。当然网上有不少解决中文传参的方法,但不是那么方便,要配置不少地方。
问题解决思路: 观察下四周,当前页面恰好有一个下拉选择列表,它里面正好有分公司及其对应的ID。于是,就想在点时链接,通过JS把中文字换成数字的ID,这样后台就再通过ID拿到分公司名称。
代码如下:
- < meta http-equiv = "Content-Type" content = "text/html; charset=gbk" />
- < select id = "branchName" >
- < option value = "10" > 北京分公司 </ option >
- < option value = "11" > 天津分公司 </ option >
- < option value = "12" > 河北分公司 </ option >
- < option value = "13" > 山西分公司 </ option >
- </ select >
- < script src = "http://code.jquery.com/jquery-latest.min.js" > </ script >
- < script >
- function getSubComId_OK(subName){
- alert("getSubComId_OK ID: " + $("option:contains('"+subName+"')").val());
- }
- function getSubComId_failed_once(subName){
- alert("getSubComId_failed_once ID: " + $("#branchName option[text = '"+subName + "' ]").val());
- alert("getSubComId_failed_once ID: " + $("#branchName option[text = "+subName + " ]").val());
- }
- getSubComId_OK('山西分公司');
- getSubComId_failed_once('山西分公司');
- </ script >
问题:
当然这个解决方案是一个权益之计,较好解决方式是全局的调整。虽然给以后的维护挖了个坑,不过方案,还是行的通的。