JavaScript 在按钮单击时加载页面

Posted

技术标签:

【中文标题】JavaScript 在按钮单击时加载页面【英文标题】:JavaScript load a page on button click 【发布时间】:2011-04-10 14:45:13 【问题描述】:

我在这里尝试做一个非常简单的任务,我希望能够单击页面上的按钮并让它将我带到另一个页面。我已经尝试过 window.location.href 和其他一些东西,但它什么也没做。我尝试了不同的平台和不同的浏览器,结果都一样。

我知道它可以调用一个函数,但我就是无法加载新页面。这也都在我的本地文件系统中,并且两个页面都位于同一级别(但我也尝试加载外部页面,如 www.apple.com)。

有什么想法吗?

谢谢 帕特里克

【问题讨论】:

你需要比“一堆其他的东西”更具体。发布您的代码(htmljavascript)并告诉我们您遇到了什么错误。 不是一个好主意:按钮被用户体验为导致动作/触发(回发、保存/加载)的东西。链接(a href)用于导航。不要混合这些。你会让用户感到困惑。 【参考方案1】:

重定向页面的简单代码

<!-- html button designing and calling the event in javascript -->
<input id="btntest" type="button" value="Check" 
       onclick="window.location.href = 'http://www.google.com'" />

【讨论】:

这个有效,但我认为我的问题是我有 type="submit" 而不是 type="button"。感谢您的帮助! window.location.assign() 在 Firefox 中对我来说效果更好。出于某种原因分配=混乱的历史。【参考方案2】:

不要滥用表单元素,只要 元素就足够了。

<style>
    /* or put this in your stylesheet */

    .button 
        display: inline-block;
        padding: 3px 5px;
        border: 1px solid #000;
        background: #eee;
    

</style>

<!-- instead of abusing a button or input element -->
<a href="url" class="button">text</a>

【讨论】:

我也想过走这条路。感谢您的帮助。反正我更喜欢这些按钮。再次感谢。 我试过这个按钮,但看起来不太好。它只是一个链接,周围有一条黑线。【参考方案3】:

只需window.location = "http://wherever.you.wanna.go.com/",或者,对于本地链接,window.location = "my_relative_link.html"

您也可以通过在地址栏中输入来尝试,例如javascript: window.location = "http://www.google.com/".

另请注意,URL 的协议部分 (http://) 对于绝对链接不是可选的;省略它将使 javascript 假定一个相对链接。

【讨论】:

感谢您的建议,我不知道您可以在浏览器中运行javascript,每天学习新东西。我正在尝试 window.location 和其他类似的但无法让它工作,我知道它应该。我发现我的“类型”是错误的,所以它与 JavaScript 无关,而与 HTML 无关。再次感谢您的建议。【参考方案4】:

此处的答案可以在同一浏览器窗口/选项卡中打开页面。

但是,当他们单击按钮时,我希望页面在新窗口/标签中打开。 (选项卡/窗口决定取决于用户的浏览器设置)

以下是在新标签/窗口中打开页面的工作原理:

<button type="button" onclick="window.open('http://www.example.com/', '_blank');">View Example Page</button>

它不一定是一个按钮,你可以在任何地方使用。 注意用于在新标签/窗口中打开的 _blank

【讨论】:

以上是关于JavaScript 在按钮单击时加载页面的主要内容,如果未能解决你的问题,请参考以下文章

在单击按钮之前不要加载 JavaScript 标记

如何在javascript中单击按钮重新加载网页,但在重新加载调用函数后

将外部 HTML 加载到页面中,包括 Javascript 并在加载时启动 JS

在页面加载时隐藏 div/popup 直到单击按钮

CI - 使用 Javascript 按钮加载控制器

单击按钮时如何重新加载页面?