2011-12-07 29 views
0

这就是我想要做的事:的jQuery导航从文本输入到一个网页名(.htm)

我有一个网站上的某些页面(脱机演示) 当你在输入“联系”输入栏并点击'提交',我想 去contact.htm。

我发现类似的东西here(学分)

的jQuery:

jQuery(function() { 
    $(document).ready(function() { 
     function goTo() { 
      window.location = where.value + '.htm'; 
      return false; 
     } 
    }); 

HTML:

<form action="" method="post" onsubmit="return goTo()"> 
    <input type="text" name="where" value="looking for" 
    onfocus="if(this.value == this.defaultValue) this.value = ''; 
    "onblur="if(this.value == '') this.value = this.defaultValue;"> 
    <input type="submit" value="Go"> 
</form> 

我对你的问题是;提交输入后,此代码根本无法导航。

这是正确的做法吗? :window.location = where.value + '.htm';

回答

1

你的HTML改成这样 - >

<form action="" method="post" onsubmit="return goTo()"> 
    <input type="text" id="where" name="where" value="looking for" //added id attribute 
    onfocus="if(this.value == this.defaultValue) this.value = '';" 
    onblur="if(this.value == '') this.value = this.defaultValue;"> 
    <input type="submit" value="Go"> 
</form> 

和你的JavaScript到这里:

function goTo() { 
    window.location = $('#where').val() + '.htm'; 
    return false; 
} 
2

'哪里'没有任何意义。

给你的输入字段一个id。

然后通过调用获得的价值: -

$('#where').val() 

(假设你给的元素的的id其中

+0

当然,这是有道理的。 jQuery如何识别它是关于htm页面的? – Opoe