2013-03-19 2 views
0

У меня есть следующий код, чтобы изменить высоту/ширину div, но он не работает. Приведенные ниже предупреждающие сообщения печатают только пустые значения. Пожалуйста, помогитеjavascript динамически меняющаяся ширина не удалась

<script> 
    function showmyidlist() { 
     try { 
      var myid = document.getElementById('myid'); 
      var myidlist = document.getElementById('myidlist'); 
      var divinput = myid.getElementsByTagName("input")[0]; 
      alert(divinput.style.height + ":" + divinput.style.height); 
      myid.style.width = divinput.style.width; 
      myid.style.height = divinput.style.height; 
      alert(myid.style.width + ":" + divinput.style.width); 

      if (myidlist.style.position != 'absolute') { 
       myid.appendChild(myidlist); 
       myid.style.position = 'relative'; 
       myidlist.style.position = 'absolute'; 
       myidlist.style.top = '10px'; 
       myidlist.style.left = '0px'; 
       myidlist.style.zindex = 1; 
       myidlist.style.display = 'block'; 
      } else if (myidlist.style.position == 'absolute') { 
       myidlist.style.position = ''; 
       myidlist.style.zindex = 0; 
       myidlist.style.display = 'none'; 
       myid.style.position = ''; 
      } 
     } catch (e) { 
      alert(e); 
     } 
    } 
</script> 


<table> 
    <tr> 
     <td style="padding:0px 10px 0px 0px;text-align:right;width:20%;">Name</td> 
     <td style="padding:0px 0px 0px 0px;text-align:center;width:60%;"> 
      <div id="myid"><input type="text" name="myid" value="" onclick="showmyidlist()"></div> 
     </td> 
     <td style="padding:0px 0px 0px 10px;text-align:left;width:20%;"> 
      <input style="width:200px;" type="submit" class="button" name="submit" value="Add My Id" /> 
     </td> 
    </tr> 
</table> 
<div id="myidlist" style="display:none;"></div> 

ответ

1

Try:

alert(divinput.clientHeight + ":" + divinput.clientWidth); 

Свойства clientHeight и clientWidth устанавливаются динамически, где, как ширина и высота, как правило, то, что первоначально установлен.

+0

это говорит undefinded: undefined – user1241438

+0

Извините, допустил ошибку в моем сообщении. Я обновил сейчас, пожалуйста, попробуйте мое редактирование. – aaroncatlin

+0

теперь он печатает значения, но затем изменение значения не работает myid.style.width = divinput.clientWidth; // не работает myid.clientWidth = divinput.style.width; // не работает – user1241438

Смежные вопросы