当我用科尔多瓦5.1应用程序,我不能让输入文本值的白名单的插件,我得到错误"遗漏的类型错误:无法读取属性'价值' null"。请帮助我。
我添加了我的代码。
<html>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript">
document.getElementById("loginsubmit").addEventListener("click", validationCheck(),false);
function validationCheck() {
alert("name =" + document.getElementById('username').value);
}
</script>
<head>
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
</head>
<body>
<form method="post" class="login_forms">
<div class="loginform">
<div class="user">
<label class="usericon">UserName:</label>
<input type="text" id="username" name="username" size="20px">
</div>
<div class="pass">
<label class="passicon">Password:</label>
<input type="password" id="password" name="password" size="20px">
</div>
<div class="submit_btn">
<input type="button" class="loginsubmit" id="loginsubmit" name="loginsubmit" value="Login">
<input type="submit" class="logincancel" id="logincancel" value="Cancel">
</div>
</div>
</form>
</body>
</html>
答案 0 :(得分:1)
您的代码尝试在将元素呈现到页面之前引用该元素。这就像在制作炸玉米饼之前尝试吃炸玉米饼一样,或者就像在他们到达你的派对之前先打电话给一个人的名字一样。
您需要等待呈现元素。因此,您需要将脚本放在正文的末尾,或者在文档就绪时调用它,或者在窗口onload上调用它。
下一个问题是您正在调用validationCheck
,而不是引用它
document.getElementById("loginsubmit").addEventListener("click", validationCheck(),false);
^^^^
需要
document.getElementById("loginsubmit").addEventListener("click", validationCheck,false);