2017-07-04 85 views
-1
<body onload="UserAction()"> 


<form action="student" id="add" align="center"> 
    Rollno:<input type="text" name="rollNo" id="rollNo"><br> 
    Name: <input type="text" name="name" id="name"><br> 
    <br> 

<script type="text/javascript" language="javascript"> 
     function UserAction() { 

      var rollNo = parseInt(localStorage.getItem("rollNo")); 
      document.write(rollNo); 
      document.getElementById("rollNo").value = rollNo; 
     } 
</script> 

rollNo值被印刷的特性‘价值’,但同时将其分配给该文本框它给了我一个错误。JavaScript错误“无法设置为空“

回答

0

您已经取代了从当页面完整的HTML你做

document.write(rollNo);

如果您rollNo时说,10那么你会得到

<body>10</body> 

当您的UserAction()函数被调用时在浏览器中呈现。因此,您需要删除此行document.write(rollNo);,以便下一行document.getElementById("rollNo")可以找到idrollNo的元素。所以,你UserAction()变,

function UserAction() { 
 
      //get roll no from localstorage 
 
      var rollNo = 10; 
 
      document.getElementById("rollNo").value = rollNo; 
 
    }
<body onload="UserAction()"> 
 

 

 
<form action="student" id="add" align="center"> 
 
    Rollno:<input type="text" name="rollNo" id="rollNo"><br> 
 
    Name: <input type="text" name="name" id="name"><br> 
 
    <br> 
 
</form> 
 
    
 
</body>

而且在当元素被document.getElementById("rollNo")检测这样你就不会得到错误"Cannot set property 'value' of null'

+0

感谢它的工作实际上,我写了document.write()来测试变量的内容,从此我将忽略它 –

0

尝试用以下行替换功能:

function UserAction() { 
     var rollNo = parseInt(localStorage.getItem("rollNo")); 
     document.getElementById("rollNo").value= rollNo; 
    } 

您提交的错误是放置整个身体的卷号而不是特定的输入字段。

由于整个主体在localstorage中被替换为rollnumber,因此没有id为'rollNo'的元素,因此错误表示它不能设置null的属性'value'。

相关问题