日期:2014-05-16 浏览次数:20390 次
?? ? ?单位转换是一简单的功能,最初是将所有转换率存入数据库, 前端通过ajax交互实现转换,因为转换的一些单位相对比较固定,后来改为放在java的二维数组中,第三次觉得完全可以省去客户端和服务器的交互,所以所有动作通过js在客户端完成。目前支持速度、面积、长度、重量、体积、温度的计算。基于jquery完成,可以改写成jquery的一个小插件。
?? ? ?// JavaScript Document
//初始下拉框 function unitSelecdtInit(obj_1,obj_2,obj_3,convertButton,inputText,outputText){ var cindex = 0; var aindex = 0; var bindex = 0; //初始分类下拉框 for(var i=0;i<category.length;i++){ $("<option value='"+i+"'>"+category[i]+"</option>").appendTo($("#"+obj_1)); } //初始A、B下拉框 for(var i=0;i<category_units[cindex].length;i++){ $("<option value='"+i+"'>"+category_units[cindex][i]+"</option>").appendTo($("#"+obj_2)); $("<option value='"+i+"'>"+category_units[cindex][i]+"</option>").appendTo($("#"+obj_3)); } //绑定change事件 $("#"+obj_1).change(function(){ cindex=$(this).val(); $("#"+obj_2).empty(); $("#"+obj_3).empty(); for(var i=0;i<category_units[cindex].length;i++){ $("<option value='"+i+"'>"+category_units[cindex][i]+"</option>").appendTo($("#"+obj_2)); $("<option value='"+i+"'>"+category_units[cindex][i]+"</option>").appendTo($("#"+obj_3)); } }); $("#"+obj_2).change(function(){ aindex=$(this).val(); }); $("#"+obj_3).change(function(){ bindex=$(this).val(); }); $("#"+convertButton).click(function(){ $("#"+outputText).val($("#"+inputText).val()*unit_convert[cindex][aindex][bindex]); }); }
?
?? ?完整代码在附件中。