为什么不是';难道我的JavaScript登录不正常吗?
我已经试着解决这个问题好几个小时了,但我不知道怎么做——我已经放弃了 有人能看一下下面的代码并找出是什么吗 请问它有问题吗 该程序的思想是允许用户输入用户名和密码,当成功验证后,他们将被重定向到URL。我认为是Javascript不能正常工作 代码如下:为什么不是';难道我的JavaScript登录不正常吗?,javascript,html,login,Javascript,Html,Login,我已经试着解决这个问题好几个小时了,但我不知道怎么做——我已经放弃了 有人能看一下下面的代码并找出是什么吗 请问它有问题吗 该程序的思想是允许用户输入用户名和密码,当成功验证后,他们将被重定向到URL。我认为是Javascript不能正常工作 代码如下: <html> <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600' rel='style
<html>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600' rel='stylesheet' type='text/css'>
<link href="//netdna.bootstrapcdn.com/font-awesome/3.1.1/css/font-awesome.css" rel="stylesheet">
<style>
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td {
padding:0;
margin:0;}
fieldset, img {border:0}
ol, ul, li {list-style:none}
:focus {outline:none}
body,
input,
textarea,
select {
font-family: 'Open Sans', sans-serif;
font-size: 16px;
color: #4c4c4c;
}
p {
font-size: 12px;
width: 150px;
display: inline-block;
margin-left: 18px;
}
h1 {
font-size: 32px;
font-weight: 300;
color: #4c4c4c;
text-align: center;
padding-top: 10px;
margin-bottom: 10px;
}
html{
background-color: #ffffff;
}
.testbox {
margin: 20px auto;
width: 343px;
height: 464px;
-webkit-border-radius: 8px/7px;
-moz-border-radius: 8px/7px;
border-radius: 8px/7px;
background-color: #ebebeb;
-webkit-box-shadow: 1px 2px 5px rgba(0,0,0,.31);
-moz-box-shadow: 1px 2px 5px rgba(0,0,0,.31);
box-shadow: 1px 2px 5px rgba(0,0,0,.31);
border: solid 1px #cbc9c9;
}
input[type=radio] {
visibility: hidden;
}
form{
margin: 0 30px;
}
label.radio {
cursor: pointer;
text-indent: 35px;
overflow: visible;
display: inline-block;
position: relative;
margin-bottom: 15px;
}
label.radio:before {
background: #3a57af;
content:'';
position: absolute;
top:2px;
left: 0;
width: 20px;
height: 20px;
border-radius: 100%;
}
label.radio:after {
opacity: 0;
content: '';
position: absolute;
width: 0.5em;
height: 0.25em;
background: transparent;
top: 7.5px;
left: 4.5px;
border: 3px solid #ffffff;
border-top: none;
border-right: none;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
transform: rotate(-45deg);
}
input[type=radio]:checked + label:after {
opacity: 1;
}
hr{
color: #a9a9a9;
opacity: 0.3;
}
input[type=text],input[type=password]{
width: 200px;
height: 39px;
-webkit-border-radius: 0px 4px 4px 0px/5px 5px 4px 4px;
-moz-border-radius: 0px 4px 4px 0px/0px 0px 4px 4px;
border-radius: 0px 4px 4px 0px/5px 5px 4px 4px;
background-color: #fff;
-webkit-box-shadow: 1px 2px 5px rgba(0,0,0,.09);
-moz-box-shadow: 1px 2px 5px rgba(0,0,0,.09);
box-shadow: 1px 2px 5px rgba(0,0,0,.09);
border: solid 1px #cbc9c9;
margin-left: -5px;
margin-top: 13px;
padding-left: 10px;
}
input[type=password]{
margin-bottom: 25px;
}
#icon {
display: inline-block;
width: 30px;
background-color: #3a57af;
padding: 8px 0px 8px 15px;
margin-left: 15px;
-webkit-border-radius: 4px 0px 0px 4px;
-moz-border-radius: 4px 0px 0px 4px;
border-radius: 4px 0px 0px 4px;
color: white;
-webkit-box-shadow: 1px 2px 5px rgba(0,0,0,.09);
-moz-box-shadow: 1px 2px 5px rgba(0,0,0,.09);
box-shadow: 1px 2px 5px rgba(0,0,0,.09);
border: solid 0px #cbc9c9;
}
.gender {
margin-left: 30px;
margin-bottom: 30px;
}
.accounttype{
margin-left: 8px;
margin-top: 20px;
}
a.button {
font-size: 14px;
font-weight: 600;
color: white;
padding: 6px 25px 0px 20px;
margin: 10px 8px 20px 0px;
display: inline-block;
float: right;
text-decoration: none;
width: 50px; height: 27px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
background-color: #3a57af;
-webkit-box-shadow: 0 3px rgba(58,87,175,.75);
-moz-box-shadow: 0 3px rgba(58,87,175,.75);
box-shadow: 0 3px rgba(58,87,175,.75);
transition: all 0.1s linear 0s;
top: 0px;
position: relative;
}
a.button:hover {
top: 3px;
background-color:#2e458b;
-webkit-box-shadow: none;
-moz-box-shadow: none;
box-shadow: none;
}
</style>
<body>
<div class="testbox">
<h1>Login</h1>
<form action="/">
<hr>
<div class="accounttype">
<input type="radio" value="None" id="radioOne" name="account" checked/>
<label for="radioOne" class="radio" chec>Student</label>
<input type="radio" value="None" id="radioTwo" name="account" />
<label for="radioTwo" class="radio">Teacher</label>
</div>
<hr>
<label id="icon" for="name"><i class="icon-envelope "></i></label>
<input type="text" name="userid" id="name" placeholder="Username / Email"/>
<label id="icon" for="name"><i class="icon-user"></i></label>
<input type="text" name="insid" id="ins" placeholder="Institution Code"/>
<label id="icon" for="name"><i class="icon-shield"></i></label>
<input type="password" name="pswrd" id="pass" placeholder="Password"/>
<div class="gender">
<input type="radio" value="None" id="male" name="gender" checked/>
<label for="male" class="radio" chec>Primary</label>
<input type="radio" value="None" id="female" name="gender" />
<label for="female" class="radio">Secondary</label>
</div>
<p>By clicking Login, you agree on our <a href="#">terms and condition</a>.</p>
<a class="button" onClick="check(this.form)">Login</a>
</form>
<script language="javascript">
function check(form)
{
if(form.userid.value == "myuserid" && form.pswrd.value == "mypswrd")
{
window.open('www.google.com')/*opens the target page while Id & password matches*/
}
</script>
</body>
</html>
阀体,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre、form、fieldset、input、textarea、p、blockquote、th、td{
填充:0;
边距:0;}
字段集,img{border:0}
ol,ul,li{列表样式:无}
:焦点{大纲:无}
身体
输入
文本区,
挑选{
字体系列:“开放式Sans”,无衬线;
字体大小:16px;
颜色:#4c;
}
p{
字体大小:12px;
宽度:150px;
显示:内联块;
左边距:18px;
}
h1{
字体大小:32px;
字体大小:300;
颜色:#4c;
文本对齐:居中;
填充顶部:10px;
边缘底部:10px;
}
html{
背景色:#ffffff;
}
.测试箱{
保证金:20px自动;
宽度:343px;
高度:464px;
-webkit边界半径:8px/7px;
-moz边界半径:8px/7px;
边界半径:8px/7px;
背景色:#ebebebeb;
-webkit盒阴影:1px2p5pRGBA(0,0,0,31);
-莫兹盒阴影:1px2p5pRGBA(0,0,0,31);
盒影:1px2p5pRGBA(0,0,0,31);
边框:实心1px#cbc9c9;
}
输入[类型=收音机]{
可见性:隐藏;
}
形式{
利润率:0.30px;
}
无线电标签{
光标:指针;
文本缩进:35px;
溢出:可见;
显示:内联块;
位置:相对位置;
边缘底部:15px;
}
标签.收音机:在{
背景:3a57af;
内容:'';
位置:绝对位置;
顶部:2个;
左:0;
宽度:20px;
高度:20px;
边界半径:100%;
}
标签。收音机:之后{
不透明度:0;
内容:'';
位置:绝对位置;
宽度:0.5em;
高度:0.25em;
背景:透明;
顶部:7.5px;
左:4.5px;
边框:3px实心#ffffff;
边界顶部:无;
边界权:无;
-webkit变换:旋转(-45度);
-moz变换:旋转(-45度);
-o变换:旋转(-45度);
-ms变换:旋转(-45度);
变换:旋转(-45度);
}
输入[类型=收音机]:选中+标签:之后{
不透明度:1;
}
人力资源{
颜色:#A9A9;
不透明度:0.3;
}
输入[类型=文本],输入[类型=密码]{
宽度:200px;
高度:39px;
-webkit边界半径:0px 4px 0px/5px 5px 4px 4px;
-moz边界半径:0px 4px 4px 0px/0px 0px 4px 4px;
边界半径:0px 4px 0px/5px 5px 4px 4px;
背景色:#fff;
-网络工具包盒阴影:1px2p5pRGBA(0,0,0,09);
-莫兹盒阴影:1px2p5pRGBA(0,0,0,09);
盒影:1px2p5pRGBA(0,0,0,09);
边框:实心1px#cbc9c9;
左边距:-5px;
边缘顶端:13px;
左侧填充:10px;
}
输入[类型=密码]{
边缘底部:25px;
}
#图标{
显示:内联块;
宽度:30px;
背景色:#3a57af;
填充:8px 0px 8px 15px;
左边距:15px;
-webkit边界半径:4px 0px 0px 4px;
-moz边界半径:4px 0px 0px 4px;
边界半径:4px 0px 0px 4px;
颜色:白色;
-网络工具包盒阴影:1px2p5pRGBA(0,0,0,09);
-莫兹盒阴影:1px2p5pRGBA(0,0,0,09);
盒影:1px2p5pRGBA(0,0,0,09);
边框:实心0px#cbc9c9;
}
.性别{
左边距:30px;
边缘底部:30px;
}
.accounttype{
左边距:8px;
边缘顶部:20px;
}
a、 钮扣{
字体大小:14px;
字号:600;
颜色:白色;
填充:6px25px0px20px;
利润率:10px 8px 20px 0px;
显示:内联块;
浮动:对;
文字装饰:无;
宽度:50px;高度:27px;
-webkit边界半径:5px;
-moz边界半径:5px;
边界半径:5px;
背景色:#3a57af;
-网络工具包盒阴影:0 3pxRGBA(58,87175,75);
-莫兹盒阴影:0 3pxRGBA(58,87175,75);
盒影:0 3pxRGBA(58,87175,75);
过渡:所有0.1s线性0;
顶部:0px;
位置:相对位置;
}
a、 按钮:悬停{
顶部:3px;
背景色:#2e458b;
-webkit盒阴影:无;
-莫兹盒阴影:无;
盒影:无;
}
登录
大学生
教师
主要的,重要的
次要的
单击“登录”,表示您同意我们的建议
登录
功能检查(表格)
{
if(form.userid.value==“myuserid”&&form.pswrd.value==“mypswrd”)
{
window.open('www.google.com')/*在Id和密码匹配时打开目标页面*/
}
几个问题
- 您需要关闭
功能的大括号check
- 正如Teemu所提到的,超链接没有对表单的引用,因此您可能必须使用输入类型按钮或其他输入元素。如果要保留超链接,请使用querySelector或其他方法获取用户ID和密码输入字段
- 超链接可能不起作用。根据您承载此网站的方式,您可能希望在链接前面添加
http://
如果您将用户名和密码放在前端代码中,任何人都可以以任何用户的身份登录。请将您的CSS移动到其他文件,或者将其从代码块中完全删除。这会占用大量空间。这不适用于学校。这适用于我正在设置的网站。我知道这不是设置登录的最有效方法但这是一种我可以轻松管理的方式。请注意,如果您要查找的密码在代码中,您需要更好地隐藏代码,或者任何人只需按F12键即可查找密码。
a
元素没有form
属性,只有表单控件元素具有该属性。这(以及缺少的括号)很容易找到,如果你只是想做基本的调试。。。