2011-03-19 63 views
5

我有一個在我所TD。當我在其中具有onkeypress事件從數據庫從whic我選擇出的表 事件選擇值文本字段中單擊一個表價值。選擇表在DIV該位置是fixed.but它還將昌高度如何讓TD的大小

<td class="value">vehicle </td><td> 
<input type="text" id="txt_sh_vid" onKeyPress="vhc_record()" maxlength="4"> 
    <div id="div_vhc" class="search_form"> 
</div> 


<input type="text" id="vid" style="display:none;"> 

JavaScript的:

function vhc_record() { 
    var data = 'vhc=' + document.getElementById('txt_sh_vid').value; 
    loadXMLDoc('ship/vehicle_ship/', 'div_vhc', data); 
    document.getElementById('div_vhc').style.visibility = "visible"; 
} 

它是上表中的CSS

td.value 
    { 
    background-color:#00628B; 
    color:#E6E6DC; 
    height:50; 

    } 

    div.search_form 
    { 
    position:fixed; 
    background-color:white; 

} 

當我在文本框按下鍵它也將改變的類=「值」DIV ID =「div_vhc」的高度,而其高度爲50

+0

什麼是您實際的問題/問題? – dmcnelis 2011-03-19 14:13:09

+0

@sadi是你的完整代碼嗎? javascript部分在哪裏? – kjy112 2011-03-19 14:15:06

+0

@kjy其javascript代碼 'function vhc_record() { var data ='vhc ='+ document.getElementById('txt_sh_vid').value; loadXMLDoc('ship/vehicle_ship /','div_vhc',data); 。 的document.getElementById( 'div_vhc')style.visibility = 「可見」; }」 – sadi 2011-03-19 14:18:42

回答

6

這裏是JSFiddle Demo。讓我知道這是你在找什麼:

我猜你在找什麼是抓住td.value寬度和高度。你可以使用offsetHeightoffsetWidth

我不是很確定你想要做什麼,但要獲得td.value的高度,你可以根據html的結構做以下假設。當然如果你想遍歷所有的td元素並找到具有類名稱值的元素,那麼你將不得不使用正則表達式來匹配該元素作爲其類的一部分:

你的vhc_record函數midified:

var myvalue = document.getElementsByTagName('td')[0]; //grabs the td.value element based on your html markup 

document.getElementById('div_vhc').style.height = myvalue.offsetHeight+'px'; //sets div_vhc height to that of td.value 
document.getElementById('div_vhc').style.width= myvalue.offsetWidth+'px';//sets div_vhc width to that of td.value 

的變化我對HTML和CSS量身定做的,我加入了一些可見性屬性,使本例看起來明顯:

<table><tr><td class="value">vehicle </td></tr></table> 
<input type="text" id="txt_sh_vid" onKeyPress="vhc_record()" maxlength="4"> 
<div id="div_vhc" class="search_form"> 
</div> 


<input type="text" id="vid" style="display:none;"> 

td.value 
{ 
    background-color:#00628B; 
    color:#E6E6DC; 
    height: 50px; 
    width: 50px; 
} 

#div_vhc 
{ 
    position:fixed; 
    background-color:white; 
    display: none; 
    border: 1px solid black; 
} 
+0

謝謝我也是這樣做的id – sadi 2011-03-19 21:01:12

1

步驟1:添加表格的佈局:固定元素的風格。

第2步:添加溢出:隱藏TD元素樣式。

下面是一個例子,其中內DIV比含TD高,但TD將保持在50和隱藏休息:如果你想擁有它,而不是滾動,使用溢出

<table style="table-layout:fixed"> 
    <tr> 
     <td style="overflow:hidden;height:50px;border:solid 1px #000"> 
      <div style="height:100px;background:#f00">Hello<br>I am a very<br>very<br>very<br>very<br>long<br>multiline<br>text...</div> 
     </td> 
    </tr> 
</table> 

:滾動td元素樣式。