按键上的Javascript函数(输入)如果字段等于

时间:2013-02-08 17:48:11

标签: javascript html

我需要根据特定字段中的值使输入键将用户带到不同的URL 这就是我到目前为止所拥有的     

 <script type="text/javascript">  document.onkeyup = KeyPressed;   
     function KeyPressed( e )  {    
         var key = ( window.event ) ? event.keyCode : e.keyCode;         
         switch( key )    {      
             case 13:        
                 if (this.getField("ls").value == 'x') {
                     alert ("its x")
                     window.location="ccamntdue.html"

                 } else if (this.getField("ls").value == ' ') {
                     alert ("its not")


                 } else {



                 }   

</script>

我可以删除参数并获取enterkey以返回测试警报以验证它是否正在查看回车键。这个问题似乎出现在争论中。我已经包含了几个警报来测试参数的任何部分是否正常工作但是看起来似乎无法正常工作。我使用html / Javascript已经有好几年了,而且我有点生疏了 如果字段等于“b”,我想让它验证字段=“a”然后将用户带到“A_url.html”,然后在按下回车键后将用户带到“b_url.html”等。

2 个答案:

答案 0 :(得分:1)

我认为您正在使用DynaForms Objects ...

尝试如下......它会帮助你......

<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>

答案 1 :(得分:-1)

这是应该做的事情。假设您为输入提供了ls http://jsfiddle.net/GZNYc/

的ID
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";
        }    
    }
};

您的代码的主要问题是getField对象上没有document方法(这是this在您的处理程序中指向的方法)。它的语法也无效,但这似乎不是你的问题。