日期:2014-05-16  浏览次数:20377 次

求助:表单中的文本输入(input)与下拉选择(select)里的文字无法水平居中
本帖最后由 epoecq 于 2013-02-25 02:00:55 编辑
网上找到此代码后,边学边想,觉得此表仍不完善,所以把学习中觉得还不够完美的片段发到这里,请高手帮助改一下。本人编程水平相当差,所以想了很多办法,网上也找了不少方案,却都不起作用。只好再向高手请教。
下边的表格中查到两个问题:一是,下拉选择框内的文字居左,有点不美观,但网上找的不少居中代码,都未能使下边的表格内的文字居中。过去在不少表格中都轻易的做到文字居中,但不知为什么,这个表格中却难做到。二是,此表的文本输入框内的文字也无法居中。以前不少表格中用代码使文字居中显示,可这次却不行。不知原因在哪。请高手赐教。
此表代码太长,分两段发。请高手复制到记事本上,用IE打开试试看,然后想办法解决一下以上问题。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>表单文本输入与下拉选择中的字体居中问题的交流</title>
<style type="text/css">
<!--
  .DoubleColorTable tr{background-color:expression(rowIndex%2==0?'#FCF5DA':'#FFFFFF');
  font-size: 12px;
  }
-->
</style>
<link href="cc.css" rel="stylesheet" type="text/css">
<SCRIPT language=JavaScript>
function $(o){return document.getElementById(o)}
window.onload=function init(){
    var input_obj=$("amount_price_total").getElementsByTagName("input"),j=input_obj.length;
    for(var i=0;i<j;i++){
         if (input_obj[i].id.indexOf("price")!=-1){
            input_obj[i].onblur=function(){calculate(this.id);calculate_total();} 
            var _id = input_obj[i].id.substring(5) ;
            $('amount' + _id).onchange = function(__id){
                return function(){
                    if($('price'+__id).value > 0){
                        calculate('price'+__id);
                        calculate_total();
                    }            
                }
            }(_id);
         }
    }
}
function calculate(id){//金额
 var numlen=id.substring(5,id.length)
 var v_amount=$("amount"+numlen).value
 var v_price=$(id).value
 if (v_amount>0&&v_price>0){
  $("total"+numlen).value=Math.ceil(v_amount*v_price*1000)/1000;//保留三位
  $("amount"+numlen).onblur=function(){calculate(id);calculate_total();}
 }
 else if (v_amount==""||v_price==""){
  $("amount"+numlen).value=""
  $(id).value=""
  $("total"+numlen).value=""
 }
 else {
  $("total"+numlen).value="非法输入"
 }
}
function calculate_total(){//合计
var temp_total=0+1-1;
var input_obj=$("amount_price_total").getElementsByTagName("input"),j=input_obj.length;
for(var i=0;i<j;i++){
 if (input_obj[i].id.indexOf("total")!=-1 &&am