Javascript 未捕获类型错误:无法读取属性';追加儿童';空值。Can';在我的代码中找不到错误
因此,首先,我的代码还没有完成。但是,下面的Javascript部分假设在单击图像时更改站点语言。我(在这里的另一篇帖子上)读到,这可能是因为整个html文档还没有完成加载?无论如何,以下是我的代码:希望我能了解导致错误的原因:Javascript 未捕获类型错误:无法读取属性';追加儿童';空值。Can';在我的代码中找不到错误,javascript,Javascript,因此,首先,我的代码还没有完成。但是,下面的Javascript部分假设在单击图像时更改站点语言。我(在这里的另一篇帖子上)读到,这可能是因为整个html文档还没有完成加载?无论如何,以下是我的代码:希望我能了解导致错误的原因: <DOCTYPE! html> <html> <head> <title> Registration</title> <link type="text/css" rel=
<DOCTYPE! html>
<html>
<head>
<title> Registration</title>
<link type="text/css" rel="stylesheet" href="stylesheetex3.css"/>
<script>
function changeLanguage()
{
document.getElementById("z").addEventListener("click");
var Username1= document.getElementById("User");
var Password1= document.getElementById("Pass");
var Retype1= document.getElementById("Pass2");
var Firstname1= document.getElementById("First");
var Middlename1= document.getElementById("Second");
var LastName1= document.getElementById("Third");
var email1 = document.getElementById("at");
var NomUtilisateur1 = document.createTextNode("Nom D'utilisateur");
var mdp1 = document.createTextNode("Mot de Passe");
var mdp21 = document.createTextNode("Verification du mot de passe");
var Prenom1 = document.createTextNode("Prenom");
var Prenom2 = document.createTextNode("Deuxieme prenom");
var NomdeFamilly1 = document.createTextNode("Nom de Famille");
var Email1 = document.createTextNode("Addresse courielle");
Username1.appendChild(NomUtilisateur1);
Password1.appendChild(mdp1);
Retype1.appendChild(mdp21);
Firstname1.appendChild(Prenom1);
Middlename1.appendChild(Prenom2);
LastName1.appendChild(NomdeFamilly1);
email1.appendChild(Email1);
}
</script>
</head>
<body>
<h1>Registration Form</h1>
<div>
<div>please fill out the form below</div>
<div class="Img">
<img id="z" src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRR2pntKihP8gow1vBejsXhgYmHDctgwjcXKWKk9y0PEXsXEbUxpELQ" onClick="changeLanguage()" />
</div>
<form>
<fieldset>
<legend id="login"> Login Details </legend>
<p>Username* <input type="text" name="Username" id="User"></p>
<p>Password* <input type="Password" name="Password" id="Pass"></input</p>
<p>Retype Password*<input type="Password" name="RetypePassword" onChange="checkPasswordMatch();" id="Pass2"></input></p>
</fieldset>
<fieldset>
<legend>User Data</legend>
<p>Firstname* <input type="text" name="firstName"></input id="First"></p>
<p>Middlename*<input type="text" name="middleName" id="Second"></input></p>
<p>LastName*<input type="text" name="lastName" id="Third"></input></p>
<p>Email*<input type="email" name="email" id="at"> </input></p>
</fieldset>
<input type="submit" value="Submit"></input>
</form>
</div>
</body>
登记处
函数changeLanguage()
{
document.getElementById(“z”).addEventListener(“单击”);
var Username1=document.getElementById(“用户”);
var Password1=document.getElementById(“Pass”);
var Retype1=document.getElementById(“Pass2”);
var Firstname1=document.getElementById(“第一”);
var Middlename1=document.getElementById(“第二”);
var LastName1=document.getElementById(“第三”);
var email1=document.getElementById(“at”);
var nomultisateur1=document.createTextNode(“Nom D'usilisateur”);
var mdp1=document.createTextNode(“Mot de Passe”);
var mdp21=document.createTextNode(“验证未通过”);
var Prenom1=document.createTextNode(“Prenom”);
var Prenom2=document.createTextNode(“Deuxieme prenom”);
var nomdfamily1=document.createTextNode(“家庭名称”);
var Email1=document.createTextNode(“Addresse courielle”);
用户名1.appendChild(nomultisateur1);
Password1.appendChild(mdp1);
Retype1.appendChild(mdp21);
名字1.儿童(Prenom1);
中间名1.附加子女(Prenom2);
姓氏1.appendChild(名称1);
email1.appendChild(email1);
}
登记表
请填写下表
登录详细信息
用户名*
密码*您在
此外,您不能将子元素附加到输入元素,而是可以将它们作为其同级元素插入
函数changeLanguage(){
document.getElementById(“z”).addEventListener(“单击”);
var Username1=document.getElementById(“用户”);
var Password1=document.getElementById(“Pass”);
var Retype1=document.getElementById(“Pass2”);
var Firstname1=document.getElementById(“第一”);
var Middlename1=document.getElementById(“第二”);
var LastName1=document.getElementById(“第三”);
var email1=document.getElementById(“at”);
var nomultisateur1=document.createTextNode(“Nom D'usilisateur”);
var mdp1=document.createTextNode(“Mot de Passe”);
var mdp21=document.createTextNode(“验证未通过”);
var Prenom1=document.createTextNode(“Prenom”);
var Prenom2=document.createTextNode(“Deuxieme prenom”);
var nomdfamily1=document.createTextNode(“家庭名称”);
var Email1=document.createTextNode(“Addresse courielle”);
插入者(nomultisateur1,用户名1);
插入符(mdp1,密码1);
插入者(mdp21,重新键入1);
插入者(Prenom1,Firstname1);
插入者(Prenom2,Middlename1);
插入者(姓名1,姓氏1);
插入者(电子邮件1,电子邮件1);
}
函数insertAfter(节点、锚定){
if(锚定下一个锚定){
anchor.parentNode.insertBefore(节点,anchor.nextSibling);
}否则{
anchor.parentNode.appendChild(节点);
}
}
登记表
请填写下表
登录详细信息
用户名*
密码*
重新输入密码*
用户数据
名字*
中间名*
姓氏*
电子邮件*
这仅仅意味着一个getElementById()
调用返回null
,这意味着您要查找的id不在文档中。此外,您不能将子节点附加到
元素.Mhm,因此我必须将其附加到p?(或表格以使我的页面更干净)。然而,这不会抹去我的“旧”字迹。我怎样才能让它消失?或者隐形?所以我可以前后切换?标题不是你的问题,它只是一个标题。你应该在问题的文本中发布一个清晰简洁的问题,最好指出出现问题的代码行。如果您将代码减少到只足以显示问题,而不是粘贴大量不相关的代码和标记,这也会有所帮助。我不喜欢贴太多对问题没用的代码。