登录时将用户重定向到主页

时间:2019-12-24 14:01:51

标签: javascript html submit

我想构建一个登录页面,单击“提交”按钮后会将用户重定向到主页,但是我也想将要发送到后端的表单的详细信息。我该如何实现?

3 个答案:

答案 0 :(得分:0)

如果您使用的是普通js,则可以使用停止默认的提交行为并停止重新加载

e.preventDefault()

在onSubmit函数中,然后将数据发布到后端并重定向页面 通过使用

window.location.href = "<redirect-url>"

答案 1 :(得分:0)

HTML表单的默认行为是将请求发布到后端。当然,可以根据需要将其覆盖,但是在这种情况下,默认值为您想要的行为。

有许多不同的编程语言可用于完成后端任务以及各种框架和库。例如,您可以使用PHP,这是一种流行的服务器端编程语言。在此基础上构建-您拥有诸如CodeIgniter之类的框架,该框架可以处理语言的大部分“繁重工作”,并且可以更快地启动和运行,但是其代价是从头开始编写所有代码时都缺乏灵活性。

您目前对特定的后端语言有任何知识或偏好吗?

可以通过多种方式处理重定向,在您的方案中,最常见的方式是发布到预期的目标(通过表单上的action属性)-在这种情况下,您的首页网址(通常是相对于'/')通常是首选,或者您可以使用完整路径/域名)。

答案 2 :(得分:0)

下面是一个关于Ajax和PHP可以做什么的非常基本的示例:

您的html

<input id='user' type="text">
<button onClick="setUser()">Set User</button>

您的JavaScript:

function setUser () {  

    var data = new FormData();
    data.append('user', document.getElementById('user').value);

    var xhr = new XMLHttpRequest();
    xhr.open('POST', 'user.php', true);
    xhr.onload = function () {
        if (this.responseText == 1) {
            window.location.href = "/"
        }
    };
    xhr.send(data);
}

以您的php为例(user.php)

if (!empty($_POST['user']) {
    echo "1";
}