0

伙计们!

我是 JavaScript 的绝对初学者,我试图在 JavaScript 函数 (passwd=="eggplant) 中获取特定条件以在同一窗口中打开链接。我试过“window.location.href” (目前在代码上),“window.location”和“location”对象,以及“window.location.replace()”函数,但它们不起作用。我还应该指出我正在使用一个单独的 .js 文件来编写脚本。

这是整个功能:

function colorFunc()
{
  var passwd = document.getElementById("pass").value;
  if(passwd=="614051"){
  window.open ('color1.html')
  }

  else if(passwd=="eggplant" || passwd=="Eggplant" || passwd=="EGGPLANT"){
  window.location.href = 'color2.html';
  }

  else{
  alert('You have got the answer wrong!');
  }
}

所有其他条件都有效,我什至可以使用“window.open”打开“color2.html”。您能否,更有经验的用户,请告诉我我做错了什么?

编辑:

这是我的 .html 文件的相关部分。

<form name="input">
<input id="pass" name="Answer" placeholder="Your answer"></input>
<input type="submit" value="Submit" onclick="colorFunc()"></input>
</form>

非常感谢!

4

1 回答 1

1

(在这里演示)

在您的 html onclick 上使用它:

onclick="colorFunc(this)"

然后在您的javascript函数中colorFunc(e)添加e.preventDefault;以防止提交表单。对于您在此处显示的这种行为,您不需要使用表单,但对于其他代码,您可能需要它。无论如何,这应该工作。

HTML

<input id="pass" name="Answer" value="614051" placeholder="Your answer"></input>
<button type="button" value="Submit" onclick="colorFunc(this)">Send</button>

JS

function colorFunc(e)
{
  var passwd = document.getElementById("pass").value;
  if(passwd=="614051"){
  window.open ('color1.html','_self'))
  }

  else if(passwd=="eggplant" || passwd=="Eggplant" || passwd=="EGGPLANT"){
  window.open('color2.html','_self'));
  }

  else{
  alert('You have got the answer wrong!');
  }
}
于 2013-08-04T15:04:27.047 回答