Home >Web Front-end >HTML Tutorial >一段神奇的代码,宽度显示为0?_html/css_WEB-ITnose

一段神奇的代码,宽度显示为0?_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-24 11:36:241387browse

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title><script language="javascript" type="text/javascript">	function showMsg(){   document.getElementById("textfield").value=document.getElementById("textfield").width;}  </script></head><body>	  <input type="submit" name="Submit" value="提交"id="Submit" onclick="showMsg()" />  <input type="text" style="width:100px;" id="textfield" name="textfield" /></body></html>


直接把代码搞成HTML代码运行下,宽度竟然显示为0,何解?


回复讨论(解决方案)

document.getElementById("textfield").width
--》
document.getElementById("textfield").style.width

document.getElementById("textfield").width
--》
document.getElementById("textfield").style.width



这个时候显示的是 100px;而不是100这个数字。

function showMsg(){   var x=document.getElementById("textfield").style.width;   var y=x.split("px");   document.getElementById("textfield").value=y[0];}

function showMsg(){   var x=document.getElementById("textfield").style.width;   var y=x.split("px");   document.getElementById("textfield").value=y[0];}



切割字符串我当然知道;问题是第二种办法是获取的样式,毕竟原生接口里可以直接获得宽度,为什么打印出来是0?


function showMsg(){   var x=document.getElementById("textfield").style.width;   var y=x.split("px");   document.getElementById("textfield").value=y[0];}



切割字符串我当然知道;问题是第二种办法是获取的样式,毕竟原生接口里可以直接获得宽度,为什么打印出来是0?

因为你写的不对呗,正确的写法楼上@zpjshiwo77已经给出了,是document.getElementById("textfield").style.width,这是内联式css获取的方法


document.getElementById("textfield").width
--》
document.getElementById("textfield").style.width



这个时候显示的是 100px;而不是100这个数字。

parseInt(document.getElementById("textfield").style.width);

 您老看看行不
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn