如果字段等于,则按键(enter)上的Javascript函数
我需要使enter键根据特定字段中的值将用户带到不同的url。如果字段等于,则按键(enter)上的Javascript函数,javascript,html,Javascript,Html,我需要使enter键根据特定字段中的值将用户带到不同的url。 这就是我目前所拥有的 document.onkeyup=按键; 功能键按下(e){ var key=(window.event)?event.keyCode:e.keyCode; 开关(钥匙){ 案例13: if(this.getField(“ls”).value==“x”){ 警报(“其x”) window.location=“ccamntdue.html” }else if(this.getField(“ls”).value=
这就是我目前所拥有的
document.onkeyup=按键;
功能键按下(e){
var key=(window.event)?event.keyCode:e.keyCode;
开关(钥匙){
案例13:
if(this.getField(“ls”).value==“x”){
警报(“其x”)
window.location=“ccamntdue.html”
}else if(this.getField(“ls”).value=''){
警惕(“它不是”)
}否则{
}
我可以删除参数并让enterkey返回一个警报进行测试,以验证它是否看到了enter键。问题似乎出在参数中。我包含了几个警报,以测试参数的任何部分是否正常工作,但似乎无法使其正常工作。我使用html/Javascript和我有点生疏。我想让它验证字段是否为=“a”,然后将用户带到“a_url.html”,如果字段等于“b”,然后在按下enter键后将用户带到“b_url.html”等等。下面是应该做的事情。假设您输入的id为
ls
代码的主要问题是,文档
对象上没有getField
方法(这就是这个在处理程序中指向的)。它的语法也是无效的,但这似乎不是你的问题。我想你正在使用
尝试下面的方式…它将帮助你
<body onkeyup="KeyPressed(event)">
<script>
function KeyPressed(event)
{
switch(event.keyCode)
{
case 13:
switch (getField("ls").value)
{
case "a":
window.location.assign("https://www.google.com");
break;
case "b":
window.location.assign("http://www.bing.com/");
break;
default:
//Default Statement;
}
break;
default:
//Default Statement;
}
}
</script>
功能键按下(事件)
{
开关(event.keyCode)
{
案例13:
开关(getField(“ls”).值)
{
案例“a”:
window.location.assign(“https://www.google.com");
打破
案例“b”:
window.location.assign(“http://www.bing.com/");
打破
违约:
//违约声明;
}
打破
违约:
//违约声明;
}
}
如果我记得的话,你必须使用window.location.href=“”correctly@TobSpr这是不正确的,将location
和location.href
设置为字符串执行完全相同的操作“您也可以将字符串分配给window.location。这意味着您可以像在大多数情况下是字符串一样使用window.location”这是什么。getField在做什么?在你的代码中的这一点看起来像是这个=窗口,因此你正在寻找窗口。getField!@Sam实际上,这个
是本例中的文档
对象,因为它是处理程序附加到的对象。但是我也从来没有听说过getField
function@user2055269请发一些没有语法错误的代码。还有什么是ls
?字段的名称?其id?您收到了什么错误消息?我尝试了此操作,得到的错误是:0x800a138f-Microsoft JScript运行时错误:无法获取属性“value”的值:对象为null或未定义。我已为字段指定了名称“ls”如下所示@user2055269您查看了吗?您必须为您的字段分配一个id。
在我的回答“假设您输入的id为ls”中说得很对是的,很抱歉。我处于极度疲劳状态。我想我应该离开这里,清醒一下头脑,这样我可以集中注意力。我会尝试一下。@downvoter请解释downvoter,这样我可以改进答案
document.onkeyup = function ( e ) {
var key = ( window.event ) ? event.keyCode : e.keyCode;
if (key == 13) {
var value = document.getElementById('ls').value;
if (value === 'x') {
window.location = "x.html";
} else {
window.location = "a.html";
}
}
};
<body onkeyup="KeyPressed(event)">
<script>
function KeyPressed(event)
{
switch(event.keyCode)
{
case 13:
switch (getField("ls").value)
{
case "a":
window.location.assign("https://www.google.com");
break;
case "b":
window.location.assign("http://www.bing.com/");
break;
default:
//Default Statement;
}
break;
default:
//Default Statement;
}
}
</script>