我已经研究了问题答案的每一个地方,并且无法从Goodle那里得到一个直接的答案,我也没有其他任何人有过线索。
我有一个简单的html表单,用于将用户名和密码发布到网址。这是在WordPress网站内完成的。我想保留用户隐藏的网页页面,这样他们就不会看到该页面并能够预订标记。
我的代码工作正常并发布信息,用户被带到确认页面。但问题是,如果用户输入错误的用户名或密码,他们将被带到我想要隐藏的页面。
我想让用户留在同一页面上,并在他们填写的表单页面上发布错误消息。
如何做到这一点的任何方向都会很棒。我已经看到了Java Script,jQuery或Ajax的一些关闭选项,但我对它们并不太熟悉。
我现在拥有的是
<form action="http://anyurl.com" method="post" target="_blank">Username: <input type="text" name="user_name" />Password: <input type="password" name="password" />
<input type="submit" value="Submit" />
</form>Click on the submit button, and the input will be sent for verification of the test.
答案 0 :(得分:1)
首先,通过URL传递听起来很像GET
,但我会将其写为POST
方法。听起来像XHR(AJAX)请求,在这种情况下通过jQuery,你将是最好的方法:
// Bind to the form submit event
$("#your_form").on("submit", function (e) {
// Prevent the form from performing default submit action
e.preventDefault();
// Get form contents (assuming username and password are the input names)
var username = $(this).find('[name="username"]').val(),
password = $(this).find('[name="password"]').val();
$.ajax({
url: "/path/to/processor.php",
data: { username: username, password: password },
type: "POST",
success: function (data) {
// do whatever to check `data`
// so if it passes it redirects to the success
// page, and if it fails it will show a message
},
failure: function (err) {
throw err;
}
});
});